OpenDOGE is a comprehensive platform for analyzing and visualizing government spending data. It aggregates data from multiple federal sources including USAspending.gov, Treasury.gov, SEC EDGAR, and more.
- Real-time contract award tracking
- Federal spending analysis
- National debt monitoring
- Economic indicators dashboard
- Company filing analysis
- Smart search capabilities
- RESTful API access
- Interactive data visualizations
- Backend: FastAPI, Python 3.11
- Database: PostgreSQL, Redis
- Infrastructure: Docker, Nginx
- APIs: USAspending.gov, Treasury.gov, FRED, SEC EDGAR, and more
-
Clone the repository:
git clone https://github.com/speer-ai/OpenDOGE.git cd OpenDOGE
-
Create and activate a virtual environment:
python3 -m venv env source env/bin/activate # On Windows: .\env\Scripts\activate
-
Install dependencies:
pip install -r requirements.txt
-
Set up environment variables:
cp .env.example .env # Edit .env with your configuration
-
Start the development environment:
docker-compose -f docker-compose.dev.yml up -d
-
Run database migrations:
alembic upgrade head
-
Start the application:
uvicorn app.main:app --reload
-
Configure your domain DNS to point to your server.
-
SSH into your server and clone the repository:
git clone https://github.com/speer-ai/OpenDOGE.git cd OpenDOGE
-
Run the deployment script:
sudo ./scripts/setup_droplet.sh
-
The script will:
- Install all necessary dependencies
- Set up SSL certificates with Let's Encrypt
- Configure Nginx as a reverse proxy
- Start all services with Docker Compose
- Set up automatic SSL renewal
Once running, access the API documentation at:
- Swagger UI:
http://localhost:8000/docs
- ReDoc:
http://localhost:8000/redoc
OpenDOGE integrates with multiple government data sources:
- USAspending.gov API
- Treasury Fiscal Data API
- Federal Reserve Economic Data (FRED)
- SEC EDGAR
- SAM.gov
- Federal Procurement Data System (FPDS)
- Federal Subaward Reporting System (FSRS)
- Fork the repository
- Create a feature branch
- Commit your changes
- Push to the branch
- Create a Pull Request
pytest
black .
isort .
flake8
This project is licensed under the MIT License - see the LICENSE file for details.
For support, please open an issue in the GitHub repository.