MyCalendrr is a powerful open source starter kit for building a multi-user appointment manager application. It uses a Neon Postgres database for efficient data storage and retrieval. The project is my submission for the Neon OSS Starter Kit Challenge on DEV and aims to provide developers with a solid foundation for quickly setting up a ReactJS Frontend and Flask Server Project in developing appointment management applications.
- Multi-user support: MyCalendrr allows multiple users to manage their appointments efficiently and share links to clients to book appointments.
- Frontend Stack: TypeScript-ReactJS, TailwindCSS, and Vite.
- Backend: Python/Flask and SQLAlchemy and Neon Postgres Database.
- Monorepo setup: This kit follows a monorepo setup, allowing for better code organization and easier collaboration among developers.
- GitHub Actions workflow: Basic setup for GitHub Actions workflow - customizable based on your project needs.
- Clone the repository:
git clone https://github.com/Cre8steveDev/Neon_Postgres_Flask_SqlAlchemy_ReactJS_Starter_Kit.git
- Install the required dependencies
# For the frontend
cd client && npm install
# For the backend
cd server && python3 -m venv ./venv
# On Linux Machines
source ./venv/bin/activate
# Install dependencies for the backend
pip install -r requirements.txt
DEV_BRANCH_NEON_DATABASE_URI=""
MAIN_BRANCH_NEON_DATABASE_URI=""
JWT_SECRET_KEY=""
- Start the frontend development server:
npm run dev
- Start the backend server:
python app.py
- Access MyCalendrr in your browser at
http://localhost:3000
Update coming soon. Till then, happy coding.
MyCalendrr is released under the MIT License.
- Stephen Omoregie: Creator and maintainer of MyCalendrr
Thanks to Neon for hosting this challenge and providing an amazing Postgres platform! Challenge Link: https://dev.to/t/neonchallenge
Python and VsCode can be a bit whacky most times. If after installing a package, and your Vscode is still screaming "I'm Losssst!". Just restart the language server. Ctrl/Cmd + Shift + P then search Language Server
- Flask Migration - https://blog.miguelgrinberg.com/post/how-to-add-flask-migrate-to-an-existing-project
- Flask SQLAlchemy - https://flask-sqlalchemy.palletsprojects.com/en/3.1.x/
- Flask Bcrypt - https://pypi.org/project/Flask-Bcrypt/
- Flask JWT Extended https://flask-jwt-extended.readthedocs.io/en/stable/basic_usage.html
- Check out available options for JWT https://flask-jwt-extended.readthedocs.io/en/stable/options.html