A modern, responsive course website built with Next.js, featuring markdown content support and Tailwind CSS styling.
- Responsive Design: Mobile-friendly layout that works on all devices
- Markdown Support: Easy content management using markdown files
- Modern UI: Clean, professional design with Tailwind CSS
- Navigation: Intuitive navigation between course sections
- Content Pages: Syllabus, assignments, resources, and schedule
- Node.js 18+
- npm or yarn
- Clone the repository:
git clone <repository-url>
cd course-website- Install dependencies:
npm install- Run the development server:
npm run dev- Open http://localhost:3000 in your browser.
course-website/
├── content/ # Markdown content files
│ ├── syllabus.md # Course syllabus
│ ├── assignments.md # Course assignments
│ └── resources.md # Course resources
├── src/
│ ├── app/ # Next.js app router pages
│ │ ├── page.tsx # Syllabus home page
│ │ ├── syllabus/ # Syllabus compatibility route
│ │ ├── assignments/ # Assignments page
│ │ └── resources/ # Resources page
│ └── lib/ # Utility functions
│ └── markdown.ts # Markdown parsing utilities
├── public/ # Static assets
└── tailwind.config.ts # Tailwind CSS configuration
- Create a new markdown file in the
content/directory - Add frontmatter metadata at the top:
---
title: 'Page Title'
date: '2026-01-01'
excerpt: 'Brief description'
---- Create a corresponding page in
src/app/directory - Use the
getPostData()function to render the markdown content
The website supports standard markdown syntax:
- Headers (# ## ###)
- Lists (bulleted and numbered)
- Links and images
- Bold and italic text
- Code blocks
- Tables
- Modify
tailwind.config.tsto customize colors, fonts, and spacing - Update
src/app/globals.cssfor global styles - Use Tailwind CSS classes for component styling
- Edit
src/app/layout.tsxto modify the navigation menu - Add or remove navigation links as needed
- Adjust the main container width in
layout.tsx - Modify page layouts in individual page components
npm run build- Vercel: Recommended for Next.js apps
- Netlify: Alternative deployment platform
- Self-hosted: Deploy to your own server
- Next.js 15: React framework with app router
- TypeScript: Type-safe JavaScript
- Tailwind CSS: Utility-first CSS framework
- gray-matter: Frontmatter parsing
- remark: Markdown processing
- date-fns: Date formatting utilities
- Fork the repository
- Create a feature branch
- Make your changes
- Submit a pull request
This project is licensed under the MIT License.
For questions or issues:
- Check the documentation
- Review the code examples
- Open an issue on GitHub