# Personal agenda web app ## Overview The Agenda project is a comprehensive tool designed to keep track of various events and important dates, from holiday schedules to waste collection dates. It's an all-in-one solution for staying on top of your personal agenda. ### Features - **Event Management:** Handles various types of events like birthdays, holidays, travel itineraries, conferences, and waste collection schedules. - **Timezone Handling:** Supports conversion and management of events across different time zones. - **Data Sources Integration:** Integrates with various sources like the UK and US holiday calendars, waste collection schedules, and space launch information. - **Custom Event Scheduling:** Allows defining custom recurring events using RRULE strings. - **Dashboard View:** Provides a web interface to display all upcoming events in an organized manner. ## Installation ### Prerequisites - Python 3 - Flask - Other dependencies listed in `requirements.txt` ### Setup 1. Clone the repository: ``` git clone https://git.4angle.com/edward/agenda ``` 2. Navigate to the project directory: ``` cd agenda ``` 3. Install required Python packages: ``` pip install -r requirements.txt ``` ## Configuration - Configure the `config` file with the necessary API keys and data directories. - Personal data such as birthdays, accommodation details, and travel plans should be placed in the specified data directory. ## Usage To run the web server: ```bash python web_view.py ``` Access the web interface through a browser at `http://localhost:5000/`. ### Modules Overview The project is structured into several modules, each handling a specific aspect of the agenda: - **Accommodation, Birthday, Calendar, Conference**: Manage specific event types. - **FX, GWR, Economist**: Integrate with external data sources for financial information, railway schedules, and publication dates. - **Sun, TheSpaceDevs, Travel**: Calculate sunrise/sunset times, track space launches, and manage travel plans. - **Waste Schedule, UK Holiday**: Handle waste collection schedules and UK holidays. ### Data Management The `data.py` script is central to the functioning of the Agenda project. It compiles events from various sources and presents them in a unified format. Edit this file to modify or add new event sources. ## Customization You can customize the script to add or remove features and modify data sources as needed. ## License This project is licensed under the MIT License. Feel free to use, modify, and distribute it as per the license terms. See the [LICENSE](LICENSE) file for details. ## Contact If you have any questions or need assistance, feel free to contact the project maintainer: - [Edward Betts](mailto:edward@4angle.com)