Skip to content

Repository files navigation

This is a Next.js project bootstrapped with create-next-app.

Project Description

Official code repository of the iJournal website, built using Next.js, Sanity CMS, and MongoDB.

Getting Started

First, install dependencies:

npm install

Run the development server:

npm run dev
# or
yarn dev
# or
pnpm dev
# or
bun dev

Open http://localhost:3000 with your browser to see the result.

You can start editing the page by modifying app/page.js. The page auto-updates as you edit the file.

This project uses next/font to automatically optimize and load Geist, a new font family for Vercel.

Learn More

To learn more about Next.js, take a look at the following resources:

You can check out the Next.js GitHub repository - your feedback and contributions are welcome!

Deploy on Vercel

The easiest way to deploy your Next.js app is to use the Vercel Platform from the creators of Next.js.

Check out our Next.js deployment documentation for more details.

File Structure

[website]/
├── app/
│   ├── about/
│   │   └── page.js                   # About page
│   ├── api/
│   │   ├── comments/
│   │   │   └── route.js              # Comments API route
│   │   └── reactions/
│   │       └── route.js              # Reactions API route
│   ├── articles/
│   │   ├── [slug]/
│   │   │   └── page.js               # Individual article page
│   │   └── page.js                   # Articles page
│   ├── journals/
│   │   ├── JournalFlipbook.js        # PDF flipbook viewer component
│   │   └── page.js                   # Journals page
│   ├── studio/[[...tool]]/
│   │   └── page.jsx                  # Sanity Studio embedded route
│   ├── globals.css                   # Global styles
│   ├── layout.js                     # Root layout
│   └── page.js                       # Homepage
├── Components/
│   ├── AddComment.js                 # Comment submission form
│   ├── CommentSection.js             # Comment section container
│   ├── Display.js                    # Content display component
│   ├── FeaturedArticles.js           # Featured articles section
│   ├── Footer.js                     # Global footer
│   ├── Homepage.js                   # Homepage content
│   ├── IndividualComment.js          # Comment display
│   ├── Navbar.js                     # Global navbar
│   └── Reactions.js                  # Article reactions
├── lib/
│   └── mongodb.js                    # MongoDB connection
├── models/
│   └── Comment.js                    # Comment data model
├── public/                           # Static assets (fonts, logos, images)
├── sanity/
│   ├── lib/
│   │   ├── client.js                 # Sanity client config
│   │   ├── image.js                  # Sanity image helper
│   │   └── live.js                   # Sanity live preview
│   └── schemaTypes/
│       ├── article.js                # Article schema
│       ├── boardPhoto.js             # Board photo schema
│       ├── index.js                  # Schema index
│       ├── journal.js                # Journal schema
│       └── teamMember.js             # Team member schema
├── next.config.mjs                   # Next.js config
├── sanity.cli.js                     # Sanity CLI config
└── sanity.config.js                  # Sanity studio config

Releases

Packages

Contributors

Languages