Skip to content

nandweza/Go-use_Tech

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

GO USETECH

Go UseTech is a comprehensive learning platform designed to offer various courses and a blog to help users enhance their skills and knowledge. This web application is built using Node.js, Express, Mongoose, EJS, Bootstrap, CSS, Passport.js for user authentication, and Firebase Storage for storing and retrieving video files and metadata for the courses. In addition to the courses and blog, the platform also includes subscription and donation features. There is also an admin dashboard for managing users, courses and blog posts.

Getting Started

Prerequisites

To run this project, you need to have the following software installed on your machine:

  • NodeJs
  • MongoDB
  • NPM(Node Package Manager)

Installation

  1. Clone the repository to your local machine using Git:

    git clone https://github.com/your-username/Go-use_Tech.git

  2. Navigate to the project directory:

    cd Go-use_Tech

  3. Install the dependencies:

    npm install

  4. Set up the environment variables:

  • Create a .env file in the root directory of the project and set the following variables:

    • MONGO_URL=your_mongodb_connection_string
    • CLIENT_ID=your_google_client_id
    • CLIENT_SECRET=your_google_client_secret
    • FACEBOOK_APP_ID=your_facebook_app_id
    • FACEBOOK_APP_SECRET=your_facebook_app_secret
    • STRIPE_SECRET_KEY=your_stripe_secret_key
  1. Start the server:

    npm start

  2. Open your web browser and visit http://localhost:8001 to access the Go UseTech platform.

Features

  • User registration and login with Passport.js for authentication.
  • View and learn from a variety of courses.
  • Read and explore blog posts.
  • Admin dashboard for managing courses and blog posts.
  • Google and Facebook authentication options for user convenience.
  • Subscription feature to allow users to subscribe to email updates.
  • Donation feature using Stripe for secure credit card payments.
  • Firebase Storage for storing and retrieving video files and metadata for courses.

Usage

Course Access

Users can register and login to access courses and blog posts. Browse through the available courses and enroll in desired ones. Access course materials, videos, and additional resources.

Blog Posts

Read and explore informative blog posts on various topics. Leave comments and engage with other users.

Subscription

Anyone can subscribe to the platform's email list. Provide an email address to receive updates, newsletters, and promotional offers.

Donation

Users can make donations to support the platform's continued growth and development. Securely make credit card payments using the Stripe payment gateway.

Technologies Used

  • Node.js
  • Express
  • MongoDB (with Mongoose)
  • EJS (Embedded JavaScript)
  • Bootstrap
  • CSS
  • Passport.js (Local, Google, and Facebook Strategies)
  • Stripe (for donation processing)
  • Firebase Storage (for video files and metadata)

Contributing

Contributions are welcome! If you find any bugs or have suggestions for improvements, feel free to open an issue or submit a pull request.

License

This project is licensed under the MIT License.

Author

Contact

For any inquiries or questions, you can contact us at usetech.go@gmail.com.