{"id":50423306,"url":"https://github.com/msdeep14/bses-v0","last_synced_at":"2026-05-31T09:30:45.034Z","repository":{"id":360869309,"uuid":"1251933305","full_name":"msdeep14/bses-v0","owner":"msdeep14","description":null,"archived":false,"fork":false,"pushed_at":"2026-05-28T06:57:06.000Z","size":58,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":0,"default_branch":"main","last_synced_at":"2026-05-28T08:21:42.509Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":null,"language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/msdeep14.png","metadata":{"files":{"readme":"README.md","changelog":"newsfeed/__init__.py","contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null,"notice":null,"maintainers":null,"copyright":null,"agents":"AGENTS.md","dco":null,"cla":null}},"created_at":"2026-05-28T03:20:51.000Z","updated_at":"2026-05-28T06:57:10.000Z","dependencies_parsed_at":null,"dependency_job_id":null,"html_url":"https://github.com/msdeep14/bses-v0","commit_stats":null,"previous_names":["msdeep14/bses-v0"],"tags_count":null,"template":false,"template_full_name":null,"purl":"pkg:github/msdeep14/bses-v0","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/msdeep14%2Fbses-v0","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/msdeep14%2Fbses-v0/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/msdeep14%2Fbses-v0/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/msdeep14%2Fbses-v0/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/msdeep14","download_url":"https://codeload.github.com/msdeep14/bses-v0/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/msdeep14%2Fbses-v0/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":33726718,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-05-26T15:22:16.424Z","status":"online","status_checked_at":"2026-05-31T02:00:06.040Z","response_time":95,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":[],"created_at":"2026-05-31T09:30:40.921Z","updated_at":"2026-05-31T09:30:45.025Z","avatar_url":"https://github.com/msdeep14.png","language":"Python","funding_links":[],"categories":[],"sub_categories":[],"readme":"# BSES v0 - Social Media Application\n\nBSES is a modern, responsive social media web application built with Django. It features photo sharing, community creation, real-time-feel interactions (AJAX likes and comments), and a global notification system.\n\n## Features\n\n- **User Accounts**: Custom signup flow using hidden UUID usernames for system stability and explicit display usernames for URLs. Follow/unfollow functionality.\n- **Photos**: Upload photos (auto-compressed to enforce 2MB limits), like, and comment.\n- **Newsfeed**: Paginated global feed merging followed users' posts and community posts.\n- **Communities**: Create and join niche communities. Upload photos exclusively to a community context. Invite other members.\n- **Notifications**: Centralized alerts for community invites, photo likes, and comments.\n\n## Local Development Setup\n\n1. **Clone and create a virtual environment**:\n   ```bash\n   python -m venv venv\n   source venv/bin/activate\n   ```\n\n2. **Install dependencies**:\n   ```bash\n   pip install -r requirements.txt\n   ```\n\n3. **Start PostgreSQL Database**:\n   The application strictly enforces PostgreSQL. Start the background database container:\n   ```bash\n   docker-compose up -d db\n   ```\n\n4. **Run migrations**:\n   ```bash\n   python manage.py makemigrations\n   python manage.py migrate\n   ```\n\n5. **Start the Gunicorn WSGI Server**:\n   Instead of the Django development server, run the production Gunicorn server locally:\n   ```bash\n   gunicorn --bind 0.0.0.0:8000 --workers 3 bses.wsgi:application\n   ```\n   Visit `http://localhost:8000` in your browser.\n\n## Start Everything via Docker (All-in-one)\nIf you don't want to start the database and Gunicorn manually as shown above, you can run everything together in one command using Docker. This will boot both the PostgreSQL database and the Django Gunicorn server simultaneously:\n```bash\ndocker-compose up -d --build\n```\nYou can then visit `http://localhost` (or your EC2 public IP) in your browser.\n\nTo stop the cluster:\n```bash\ndocker-compose down\n```\n\n## Production Deployment (AWS EC2 / Docker)\n\nThis repository includes a `Dockerfile` and `docker-compose.yml` pre-configured for a production-like PostgreSQL setup.\n\n1. **Start the application cluster**:\n   ```bash\n   docker-compose up -d --build\n   ```\n\n   This spins up two containers:\n   - `db`: PostgreSQL 15 database.\n   - `web`: The Django application running via Gunicorn (or management server).\n\n2. **Access the application**:\n   The application will be exposed on port `80` of your host machine.\n\n3. **Database Inspection**:\n   To view the raw data directly inside your running PostgreSQL container, make sure you are inside the `bses-v0` directory, then run:\n   ```bash\n   cd ~/bses-v0  # Ensure you are in the project folder\n   docker-compose exec db psql -U postgres -d bses\n   ```\n   *Useful `psql` commands once inside:*\n   - `\\dt` : List all tables\n   - `\\d \u003ctable_name\u003e` : View table schema\n   - `SELECT * FROM users_user;` : Run a standard SQL query\n   - `\\q` : Quit and return to bash\n\n4. **Stopping the cluster**:\n   ```bash\n   docker-compose down\n   ```\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fmsdeep14%2Fbses-v0","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fmsdeep14%2Fbses-v0","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fmsdeep14%2Fbses-v0/lists"}