{"id":50969405,"url":"https://github.com/aelithron/novatea","last_synced_at":"2026-06-19T00:30:48.325Z","repository":{"id":330119064,"uuid":"1117072729","full_name":"aelithron/novatea","owner":"aelithron","description":"Nova's personal website and blog!","archived":false,"fork":false,"pushed_at":"2026-01-26T03:15:00.000Z","size":707,"stargazers_count":2,"open_issues_count":0,"forks_count":0,"subscribers_count":0,"default_branch":"main","last_synced_at":"2026-05-28T00:28:06.162Z","etag":null,"topics":["blog","nextjs","no-ai","personal","personal-site"],"latest_commit_sha":null,"homepage":"https://novatea.dev","language":"TypeScript","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/aelithron.png","metadata":{"files":{"readme":"README.md","changelog":null,"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":null,"dco":null,"cla":null}},"created_at":"2025-12-15T19:43:14.000Z","updated_at":"2026-05-26T21:45:07.000Z","dependencies_parsed_at":null,"dependency_job_id":null,"html_url":"https://github.com/aelithron/novatea","commit_stats":null,"previous_names":["aelithron/novatea"],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/aelithron/novatea","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/aelithron%2Fnovatea","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/aelithron%2Fnovatea/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/aelithron%2Fnovatea/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/aelithron%2Fnovatea/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/aelithron","download_url":"https://codeload.github.com/aelithron/novatea/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/aelithron%2Fnovatea/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":34513020,"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-06-18T02:00:06.871Z","response_time":128,"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":["blog","nextjs","no-ai","personal","personal-site"],"created_at":"2026-06-19T00:30:47.238Z","updated_at":"2026-06-19T00:30:48.291Z","avatar_url":"https://github.com/aelithron.png","language":"TypeScript","funding_links":[],"categories":[],"sub_categories":[],"readme":"# novatea ![IMG](https://hackatime-badge.hackclub.com/U08RJ1PEM7X/novatea)\nNova's personal website and blog! Made for Hack Club [Flavortown](https://flavortown.hackclub.com)! \\\n\u003ca href=\"https://notbyai.fyi\" target=\"_blank\"\u003e\n  \u003cimg src=\"https://raw.githubusercontent.com/aelithron/novatea/refs/heads/main/public/not-by-ai.svg\" alt=\"Developed by a human, not by AI!\"\u003e\n\u003c/a\u003e\n\n## Features\n- Dynamic widgets\n- A fully-featured custom blog, including an RSS feed\n  - Also features full Markdown support!\n- A portfolio of my projects\n- Pages talking about myself and my accounts\n- Full admin panel for changing blog posts and projects\n- More cool things! :3\n\n## Usage\nUsing this is quite simple! Just go to [novatea.dev](https://novatea.dev) in any web browser!\n### Self-Hosting\nI have no clue why you want to self-host my website, but ok! I suggest running it in Docker.\n1. Set up environment variables:\n- `DATABASE_URL`: A valid PostgreSQL connection string, in the format of `postgres://\u003cuser\u003e:\u003cpassword\u003e@\u003chost\u003e:\u003cport\u003e/\u003cdatabase\u003e`.\n- `ADMIN_TOKEN`: Any text, but I would suggest picking a secure password. This will allow anyone who knows it to read/publish/edit/delete blog posts and projects.\n2. Apply database migrations. This essentially just creates the tables that the site needs to work. I'm not really sure how to describe how to do this, but you essentially just need to clone the source code and run `npx drizzle-kit push`. Figure it out, I guess :3\n3. Deploy the one of the following Docker configs.\n**Make sure to fill in the environment variables!**\n#### Docker Compose\n```yaml\nservices:\n  novatea:\n    image: ghcr.io/aelithron/novatea:latest\n    container_name: novatea\n    restart: unless-stopped\n    environment:\n      DATABASE_URL: \"\"\n      ADMIN_TOKEN: \"\"\n    ports:\n      - 3000:3000\n```\n#### `docker run` Command\n```bash\ndocker run -d \\\n  --name novatea \\\n  -p 3000:3000 \\\n  -e DATABASE_URL=\"\" \\\n  -e ADMIN_TOKEN=\"\" \\\n  --restart unless-stopped \\\n  ghcr.io/aelithron/novatea:latest\n```\n## Credits\nI was inspired by some other personal sites :3 \\\nHere's some links (these are the main ones I was inspired by, bold ones are my friends):\n- **https://parkalex.dev**\n- **https://shymike.dev**\n- https://kibty.town\n- https://lily.pet\n\nI also used Font Awesome icons throughout the app!\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Faelithron%2Fnovatea","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Faelithron%2Fnovatea","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Faelithron%2Fnovatea/lists"}