PastForward is a one-of-a-kind application that bridges the gap between history and modern social interaction. With a unique twist, it allows users to step back in time and engage with historical posts as if they were part of today’s social feed. Browse iconic moments, like legendary events, and comment on the past — all through a familiar, interactive social media experience.
Whether it’s a royal decree, a revolutionary speech, or a snapshot of daily life from centuries ago, PastForward makes history feel alive and personal. It’s not just about learning the past — it’s about living it..
Presentation Link:
Live Demo :
https://pastforward-neon.vercel.app/
- Authentication: User registration and login with Google OAuth
- Post Creation: Create posts with images and captions
- Public Feed: Browse posts from all users with infinite scrolling
- Interaction: Like and comment on posts
- Profile Management: View and edit user profiles
- Follow System: Follow/unfollow other users
- Historical Content: Browse and interact with historical posts
- Search: Find users and content
- Responsive Design: Works on mobile and desktop devices
- Frontend: Next.js 14, React, Tailwind CSS
- Backend: Next.js API Routes, Server Actions
- Database: PostgreSQL (Neon)
- ORM: Prisma
- Authentication: NextAuth.js
- AI Integration: OpenAI, ElevenLabs (with free alternatives)
- Image Generation: Replicate, Stability AI
- Deployment: Vercel
-
Clone the repository:
git clone https://github.com/Anubhab-Rakshit/pastforward.git cd pastforward -
Install dependencies:
npm install # or yarn install -
Set up environment variables: Create a
.env.localfile in the root directory with the following variables:# Database DATABASE_URL= DATABASE_URL_UNPOOLED= PGHOST= # Authentication NEXTAUTH_SECRET= NEXTAUTH_URL=http://localhost:3000 GOOGLE_CLIENT_ID= GOOGLE_CLIENT_SECRET= # AI Services GEMINI_API_KEY= HUGGINGFACE_API_KEY= -
Set up the database:
npx prisma generate npx prisma db push
-
Run the development server:
npm run dev
# or
yarn dev- Open http://localhost:3000 in your browser.
- Navigate to the sign-up page
- Sign up with Google or create a new account
- Complete your profile setup
- Click on the "+" button in the navigation
- Upload an image
- Add a caption
- Click "Post"
- Browse the public feed
- Like posts by clicking the heart icon
- Comment on posts by clicking the comment icon
- Follow users by visiting their profile and clicking "Follow"
- Navigate to the "Interact" page
- Browse historical posts
- Like and comment on historical content
-
Push your code to GitHub
-
Connect your repository in Vercel
-
Configure project:
- Framework Preset: Next.js
- Build Command:
prisma generate && prisma migrate deploy && next build - Output Directory:
.next
-
Add Environment Variables:
- Add all your environment variables from
.env.localto Vercel - Make sure to include database connection strings and API keys
- Add all your environment variables from
-
Update Google OAuth:
- Add your Vercel deployment URL to Google Cloud Console
- Add
https://your-vercel-app.vercel.appto Authorized JavaScript origins - Add
https://your-vercel-app.vercel.app/api/auth/callback/googleto Authorized redirect URIs
-
Deploy and test your application
PastForward includes support for free alternatives to paid APIs:
- Text Generation: HuggingFace models instead of OpenAI
- Image Generation: Stable Diffusion XL instead of DALL-E
- Text-to-Speech: ElevenLabs free tier or browser-based alternatives
See lib/free-api-alternatives.ts for implementation details.
Contributions are welcome! Please feel free to submit a Pull Request.
This project is licensed under the MIT License - see the LICENSE file for details.





