The Tangential Backend is a serverless application built using the Serverless Framework, Node.js, and TypeScript. This backend is designed to provide processing of your Jira epics to give insights into how projects are progressing.
The application is deployed on AWS and leverages various AWS services, including Lambda, API Gateway, and SQS (Simple Queue Service). It's architected to handle HTTP API requests and process SQS messages, making it highly responsive and capable of handling high-throughput workloads.
- Serverless Deployment: Utilizes AWS Lambda for running serverless functions, reducing the overhead of server management.
- Scalable Queue Processing: Integrates AWS SQS for queue management, allowing efficient handling of asynchronous tasks.
- API Gateway Integration: Uses AWS API Gateway for handling HTTP API requests, ensuring secure and scalable endpoints.
- Flexible Environment Configuration: Supports environment variables for various stages (development, production) through
serverless-dotenv-plugin
.
- HTTP API handlers for initiating workspace analysis, project analysis, and text report generation.
- SQS queue handlers for processing analysis tasks and report generation tasks.
OPENAI_API_KEY
: For integrating with OpenAI services.MONGODB_URI
: MongoDB connection URI.MONGODB_DATABASE
: Specifies the database name, dynamically configured based on the deployment stage.
- Configured to use a custom domain for each stage using
serverless-domain-manager
.
Clone the repository and run yarn install
to install dependencies. Ensure AWS credentials are configured for deployment.
You will need to install Tangential Core to do development on this project.
Deploy the application using the Serverless Framework. Set the required environment variables in the AWS Lambda configuration or through a .env
file for local development.
Contributions to the Tangential Backend are welcome. Please read the contributing guidelines for more details.
This project is licensed under the MIT License - see the LICENSE file for details.
This backend works together with the Tangential Frontend Repository and the Tangential Core Repository.