RisingCompute Website
The marketing site for RisingCompute — IP cores for AI, space, and robotics.
- Backend: Django 5 + Django REST Framework + PostgreSQL
- Frontend: Vue 3 + Vite + Vue Router
- Deployment: any WSGI host (gunicorn + nginx) + a static-file host for the SPA
Layout
rising-web/
├── backend/ # Django project
│ ├── risingcompute/ # Project settings, urls, wsgi, asgi
│ ├── api/ # The "api" app — models, views, serializers, admin
│ │ └── migrations/ # Schema + seed data
│ ├── manage.py
│ ├── requirements.txt
│ └── .env.example
├── frontend/ # Vue 3 SPA (Vite)
│ ├── src/
│ │ ├── components/
│ │ ├── views/
│ │ ├── router/
│ │ ├── api/
│ │ └── assets/styles/
│ ├── package.json
│ ├── vite.config.js
│ └── .env.example
├── DATABASE_SETUP.md # PostgreSQL install + provisioning
├── design-document.md # Empty template (origin)
├── filled_design_document.md # Founder-filled version
└── final_design_document.md # Build-ready spec (source of truth)
Quick start (development)
You'll need: Python 3.11+, Node 20+, PostgreSQL 14+.
1. Provision the database
Follow DATABASE_SETUP.md. At the end of it you should have:
- a running PostgreSQL with a database called
risingcompute - a user called
risingcomputewith a strong password - a
DATABASE_URLyou can paste intobackend/.env
2. Run the backend
cd backend
cp .env.example .env # then edit DATABASE_URL + SECRET_KEY
python -m venv .venv
source .venv/bin/activate # Windows: .venv\Scripts\activate
pip install -r requirements.txt
python manage.py migrate # also seeds products, founders, blog posts
python manage.py createsuperuser
python manage.py runserver 0.0.0.0:8000
Backend lives at http://127.0.0.1:8000. Useful URLs:
http://127.0.0.1:8000/admin/— Django admin (manage products, blog, openings, submissions)http://127.0.0.1:8000/api/health/— uptime checkhttp://127.0.0.1:8000/api/products/— JSON list of IP coreshttp://127.0.0.1:8000/api/founders/— founder profileshttp://127.0.0.1:8000/api/posts/— blog post list
3. Run the frontend
cd frontend
cp .env.example .env # optional in dev (proxy handles it)
npm install
npm run dev
Frontend lives at http://127.0.0.1:5173. Vite proxies /api/* to Django on :8000, so the SPA and backend behave as same-origin during dev.
4. Sign in to admin and check
Visit http://127.0.0.1:8000/admin/, sign in with the superuser you created, and verify that Products, Founders, and Blog posts are all populated by the seed migration.
Open http://127.0.0.1:5173/ — you should see the RisingCompute homepage with three product cards and three blog teasers loaded from the API.
API contract
| Method | Endpoint | Purpose |
|---|---|---|
| GET | /api/health/ |
Service uptime |
| GET | /api/products/ |
List published products |
| GET | /api/products/<slug>/ |
Single product |
| GET | /api/founders/ |
Founder profiles for the About page |
| GET | /api/posts/ |
List published blog posts |
| GET | /api/posts/<slug>/ |
Single post |
| GET | /api/jobs/ |
Open roles |
| POST | /api/contact/ |
Submit the contact / evaluation form |
| POST | /api/newsletter/ |
Newsletter signup |
| POST | /api/apply/ |
Job application (multipart, supports CV upload) |
Submission endpoints are rate-limited to 30/hour per anonymous IP.
Deployment
Backend (Django):
- Provision a VM (Ubuntu 22+) and follow DATABASE_SETUP.md.
- Set
DJANGO_DEBUG=False, a realDJANGO_SECRET_KEY, realDJANGO_ALLOWED_HOSTS, and a realDATABASE_URLinbackend/.env. pip install -r requirements.txtpython manage.py migrate && python manage.py collectstatic --noinput- Run with gunicorn behind nginx:
gunicorn risingcompute.wsgi:application --bind 0.0.0.0:8000 --workers 3 - Point nginx at gunicorn for
/api/and/admin/, and serve/static/frombackend/staticfiles/.
Frontend (Vue SPA):
- Set
VITE_API_BASE_URL=https://risingcompute.in(or your API host). npm run build→ producesfrontend/dist/.- Serve the
dist/folder from any static host (nginx, Vercel, Cloudflare Pages, Netlify, S3+CloudFront). Make sure unknown paths fall back toindex.html(SPA history mode).
Editing content
All marketing content is editable from the Django admin:
- Products — name, tagline, summary, description, benefits, features, spec table (JSON).
- Founders — bios, photo URLs, LinkedIn.
- Blog posts — title, excerpt, markdown body, category, author.
- Job openings — open / closed, description, location.
- Submissions — Contact submissions, Newsletter signups, Job applications all show up here for triage.
The seed migration (api/migrations/0002_seed_initial_data.py) populates the initial copy. Re-running migrations does not overwrite edits you've made in the admin (it uses update_or_create, so it will re-sync defaults — edit copy in the admin to make changes stick).
Brand reference
Aligned with the company core values — Fast · Reliable · Robust.
- Primary:
#0B1437(Deep Space Indigo) - Surface:
#1A2347(Slate Navy) - Accent:
#00E5FF(Accelerate Cyan) - Text:
#F4F6FB(Mist) - Type: Inter + JetBrains Mono
- Default theme: dark
- Motion: subtle (fade-ins, hover lifts, one animated hero datapath). Respects
prefers-reduced-motion.
License
Proprietary. © RisingCompute Pvt Ltd.