Skip to content

Anmol283/PolyVerse-A-translator-app

Repository files navigation

🌐 Polyverse

Breaking language barriers, one word at a time.


πŸ“– Overview

Polyverse is a modern, elegant translation web application built with Next.js, MongoDB, and Tailwind CSS. It offers a seamless translation experience with support for 12+ languages, user authentication, and translation history tracking. The sleek, professional dark theme provides a premium user experience across all devices.


πŸ“Έ Sneak Peek

Homepage Screenshot Β  Profile Page Screenshot


✨ Features

🌍 Translation Engine

  • Multi-language Support: Translate between 12+ popular languages
  • Real-time Translation: Fast, responsive translation interface
  • Fallback API System: Multiple translation services for reliability
  • Language Swapping: Easily switch source and target languages

πŸ‘€ User Management

  • Secure Authentication: User registration and login with NextAuth.js
  • Profile Management: View and manage your account details
  • Translation History: Access all your previous translations
  • Data Privacy: Secure handling of user information

🎨 Modern UI/UX

  • Professional Dark Theme: Sleek navy blue and black gradient design
  • Responsive Design: Perfect experience on desktop, tablet, and mobile
  • Animated Components: Subtle animations for a premium feel
  • Accessibility: Built with accessibility in mind

πŸ’Ύ Data Persistence

  • MongoDB Integration: Reliable storage for user data and translations
  • Translation History: Save and retrieve past translations
  • User Preferences: Store user settings and preferences

πŸ› οΈ Technical Implementation

Tech Stack

🧱 Tech Stack

Category Technologies
Frontend Next.js React TypeScript
Styling Tailwind CSS Shadcn/ui
Database MongoDB
Authentication NextAuth.js
Translation APIs LibreTranslate MyMemory API
Deployment Vercel

Directory Structure

polyverse/
β”œβ”€β”€ app/                    # Next.js app directory
β”‚   β”œβ”€β”€ api/                # API routes
β”‚   β”‚   β”œβ”€β”€ auth/           # Authentication endpoints
β”‚   β”‚   β”œβ”€β”€ translate/      # Translation API
β”‚   β”‚   └── translations/   # User translations management
β”‚   β”œβ”€β”€ login/              # Login page
β”‚   β”œβ”€β”€ signup/              # Signup page
β”‚   β”œβ”€β”€ profile/            # User profile page
β”‚   β”œβ”€β”€ layout.tsx          # Root layout
β”‚   └── page.tsx            # Homepage
β”œβ”€β”€ components/             # Reusable components
β”‚   β”œβ”€β”€ ui/                 # Shadcn/ui components
β”‚   β”œβ”€β”€ navigation.tsx      # Navigation bar
β”‚   β”œβ”€β”€ auth-provider.tsx   # Authentication provider
β”‚   └── theme-toggle.tsx    # Dark mode toggle
β”œβ”€β”€ lib/                    # Utility functions
β”‚   β”œβ”€β”€ mongodb.ts          # MongoDB connection
β”‚   └── auth.ts             # NextAuth configuration
β”œβ”€β”€ types/                  # TypeScript type definitions
β”œβ”€β”€ public/                 # Static assets
β”‚   └── favicon.ico         # Site favicon
β”œβ”€β”€ .env.local              # Environment variables (create from .env.example)
β”œβ”€β”€ .env.example            # Example environment variables
β”œβ”€β”€ next.config.js          # Next.js configuration
β”œβ”€β”€ tailwind.config.js      # Tailwind CSS configuration
β”œβ”€β”€ tsconfig.json           # TypeScript configuration
└── package.json            # Project dependencies

Installation

  1. Clone the repository
git clone https://github.com/yourusername/polyverse.git
cd polyverse
  1. Install dependencies
npm install
  1. Set up environment variables

Create a .env.local file from .env.example and fill in:

MONGODB_URI=your_mongodb_uri
NEXTAUTH_SECRET=your_secret
NEXTAUTH_URL=http://localhost:3000
  1. Run the development server
npm run dev
  1. Open your browser

Navigate to http://localhost:3000

πŸ§ͺ Testing

Run tests using:

npm run test

This will execute all unit and integration tests to ensure the application is functioning correctly.

πŸ“„ License

This project is licensed under the MIT License.

πŸ™‹β€β™€οΈ Acknowledgements

About

🌐 Modern multilingual translation app with Next.js, MongoDB & dark UI. Save translation history, 12+ languages supported.

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published