A full-stack, containerized platform enabling document management, vector embeddings generation, and semantic search for organizations.
- User Authentication: AWS Cognito-based.
- Document Management: Manage documents by teams and projects.
- Vector Embeddings: AWS Bedrock (Titan Embeddings) powered.
- Vector Storage: PostgreSQL with pgvector for semantic search.
- RESTful API: FastAPI backend.
- Web Frontend: Containerized frontend interface.
- Cloud Storage: AWS S3 integration.
Layer | Technology |
---|---|
Backend | FastAPI, PostgreSQL (pgvector), Langchain |
Authentication | AWS Cognito |
Embeddings | AWS Bedrock (Titan Embeddings) |
Storage | AWS S3 |
Frontend | Next Js |
Containerization | Docker, Docker Compose |
Package Manager | uv (for Python dependencies) |
-
Python 3.10+
-
Docker & Docker Compose
-
AWS Account with:
- S3 Bucket
- Cognito User Pool
- Bedrock Access
-
PostgreSQL with pgvector extension
A sample .env.example
is provided with all required environment variables.
- Copy
.env.example
to.env
:
cp .env.example .env
- Update values as per your environment.
git clone <repository-url>
cd embed_org_project
uv pip sync
OR
uv pip install -r requirements.txt
Ensure valid credentials in ~/.aws/credentials
or via environment variables.
docker-compose up -d
docker-compose -f prod-docker-compose.yaml up -d
uv run app.py
cd frontend
npm install
npm run dev
- API Docs: http://localhost:7410/docs
- ReDoc: http://localhost:7410/redoc
- Frontend: http://localhost:3000
Contributions are welcome and appreciated.
To contribute:
- Fork the repository and create a new branch.
- Make your changes with clear, focused commits.
- Submit a pull request with a detailed description.
Note: Use
uv
for managing backend dependencies. Avoid committing sensitive files such as.env
.
For major changes, please open an issue first to discuss the proposal.
This project is our first attempt at building a full-fledged open-source platform. We are actively working to improve its stability and add new features.
This is an initial MVP (Minimum Viable Product) release, and we expect there may be bugs or issues. If you encounter any significant problems, unexpected behavior, or have suggestions, please open an issue or contribute directly.
We appreciate your support and feedback as we work towards making this a robust and production-ready platform.
- Prathamesh Kulkarni
- Piyush Sonawane
Refer to the LICENSE file for license details.