GDG website, what else can it be? This is the official digital home for Google Developer Groups (GDG) on Campus at SJEC. It's built to showcase our community, events, projects, and the talented individuals who make it all happen.
We use Bun for fast dependency management and execution. Follow these steps to set up the project locally:
- Bun installed on your machine.
bun installStart the local development server:
bun run devBuild the production site:
bun run buildPreview your production build locally:
bun run previewHere's an overview of how the project is organized:
/
├── astro.config.mjs # Astro configuration
├── package.json # Dependencies and Bun scripts
├── tsconfig.json # TypeScript configuration
├── public/ # Static assets served as-is (fonts, icons, images)
│ └── images/ # Blog, project, and event media
├── src/
│ ├── components/ # Page sections and shared UI
│ │ └── ui/
│ ├── content/ # JSON/MD content and collections
│ │ ├── blog/ # Blog posts (Markdown)
│ │ ├── config.ts # Astro content collections config
│ │ ├── events.json
│ │ ├── project-template.json
│ │ ├── projects.json
│ │ ├── team.json
│ │ └── teamLead.json
│ ├── layouts/ # Layout components (Layout, BlogLayout, ProjectLayout)
│ ├── lib/ # Shared helpers (e.g., Font.astro)
│ ├── pages/ # Astro routes
│ │ ├── index.astro
│ │ ├── blog/ # Blog listing and detail
│ │ ├── events/ # Events listing
│ │ ├── projects/ # Project listing and detail
│ │ └── team/ # Team page
│ └── styles/ # Global and component CSS
└── README.md
Adding a new project to the website is easy! Follow these steps:
- Locate Template: Open
src/content/project-template.json. - Copy & Update: Copy the object inside the array and append it to the end of
src/content/projects.json. - Fill Details:
slug: Unique URL-friendly name (e.g., "my-awesome-app").media.thumbnail: Path to the image inpublic/images/projects/.media.video: YouTube or Google Drive link (if any).links.github: Link to the repository.links.live: Link to the hosted demo.
- Add Images: Place your project images in
public/images/projects/. - Verify: Run
bun run devand navigate to/projects/[your-slug]to see your project live!
- Fork the repository.
- Create a new branch (
git checkout -b feature/amazing-feature). - Commit your changes (
git commit -m 'Add some amazing feature'). - Push to the branch (
git push origin feature/amazing-feature). - Open a Pull Request.
Happy Coding!