A simple, serverless text-sharing application built with Flask, Next.js, and AWS CDK.
In active development. The backend API now supports creating, retrieving, and deleting snippets. The frontend provides forms for creating and retrieving snippets and displays them. The application is dockerized and runs behind an Nginx proxy. We're continuing to develop the application with a Test-Driven Development (TDD) approach.
- Backend (Flask): Implemented core API endpoints (
/snippets
and/snippets/{id}
) for creating, retrieving, and deleting text snippets. Currently using in-memory storage. - Frontend (Next.js): Implemented forms for creating and retrieving snippets. Basic styling and error handling are in place. Integration with the backend API allows for creating and displaying snippets.
- Deployment: Dockerized the application and set up an Nginx proxy.
- Migrate from in-memory storage to a persistent database solution (e.g., DynamoDB).
- Implement more robust error handling and input validation.
- Improve UI/UX and styling.
- Implement snippet editing functionality.
- Begin implementing CDK infrastructure for AWS deployment (API Gateway, Lambda).
- User Authentication: Implement user accounts and authentication to associate snippets with users.
- CI/CD: Set up a robust CI/CD pipeline using GitHub Actions for automated testing, building, and deployment.
- Enhanced Features: Explore additional features like snippet sharing, searching, and syntax highlighting.
- Backend: Python, Flask, pytest
- Frontend: Next.js, React, TypeScript, Jest
- Infrastructure: AWS CDK, API Gateway, Lambda (planned), Docker, Nginx
Contributions are welcome! Please open an issue or submit a pull request.
This project is licensed under the MIT License - see the LICENSE file for details.