|
1 | 1 | This is a [Next.js](https://nextjs.org/) project bootstrapped with [`create-next-app`](https://github.com/vercel/next.js/tree/canary/packages/create-next-app).
|
| 2 | +SearchEx is a search engine clone built with Next.js 13 (beta dir). It utilizes Google Custom Search API and other APIs to provide users with search results. Users can log in and log out using Next-Auth for authentication. |
| 3 | + |
| 4 | +## Features |
| 5 | +* Clean UI |
| 6 | +* Search for web pages, images, news, and videos |
| 7 | +* View search history and saved searches |
| 8 | +* Sign up, log in, and log out |
| 9 | +* Support for multiple authentication providers (e.g. Google, GitHub) |
| 10 | +* Pagination system at the bottom of the search page |
| 11 | +* Open AI for Card |
| 12 | +* Light & dark Theme |
2 | 13 |
|
3 | 14 | ## Getting Started
|
4 | 15 |
|
5 |
| -First, run the development server: |
| 16 | +To get started with this project, you can simply clone this repository and install the necessary dependencies. |
6 | 17 |
|
7 | 18 | ```bash
|
8 |
| -npm run dev |
9 |
| -# or |
10 |
| -yarn dev |
11 |
| -# or |
12 |
| -pnpm dev |
| 19 | +git clone https://github.com/devxprite/searchex.git |
| 20 | +cd searchex |
| 21 | +npm install |
13 | 22 | ```
|
14 | 23 |
|
15 |
| -Open [http://localhost:3000](http://localhost:3000) with your browser to see the result. |
| 24 | +### Configuration |
| 25 | +Before running the project, make sure to set up the environment variables in a .env file located in the root directory of the project. Below is a sample .env file: |
| 26 | +``` |
| 27 | +GOOGLE_API_KEY= |
| 28 | +GOOGLE_API_CX= |
16 | 29 |
|
17 |
| -You can start editing the page by modifying `app/page.js`. The page auto-updates as you edit the file. |
| 30 | +YOUTUBE_API_KEY= |
18 | 31 |
|
19 |
| -[API routes](https://nextjs.org/docs/api-routes/introduction) can be accessed on [http://localhost:3000/api/hello](http://localhost:3000/api/hello). This endpoint can be edited in `pages/api/hello.js`. |
| 32 | +NEWS_API_KEY= |
| 33 | +OPENAI_API_KEY= |
20 | 34 |
|
21 |
| -The `pages/api` directory is mapped to `/api/*`. Files in this directory are treated as [API routes](https://nextjs.org/docs/api-routes/introduction) instead of React pages. |
| 35 | +NEXTAUTH_URL= |
| 36 | +NEXTAUTH_SECRET= |
22 | 37 |
|
23 |
| -This project uses [`next/font`](https://nextjs.org/docs/basic-features/font-optimization) to automatically optimize and load Inter, a custom Google Font. |
| 38 | +GITHUB_ID= |
| 39 | +GITHUB_SECRET= |
24 | 40 |
|
25 |
| -## Learn More |
| 41 | +AUTH0_ISSUER_BASE_URL |
| 42 | +AUTH0_CLIENT_ID |
| 43 | +AUTH0_CLIENT_SECRET= |
26 | 44 |
|
27 |
| -To learn more about Next.js, take a look at the following resources: |
| 45 | +MONGODB_USERNAME= |
| 46 | +MONGODB_PASSWORD= |
| 47 | +MONGODB_HOST= |
| 48 | +MONGODB_DB= |
| 49 | +``` |
28 | 50 |
|
29 |
| -- [Next.js Documentation](https://nextjs.org/docs) - learn about Next.js features and API. |
30 |
| -- [Learn Next.js](https://nextjs.org/learn) - an interactive Next.js tutorial. |
| 51 | +### Running the Project |
31 | 52 |
|
32 |
| -You can check out [the Next.js GitHub repository](https://github.com/vercel/next.js/) - your feedback and contributions are welcome! |
| 53 | +Once you have set up the environment variables, you can start the development server with the following command: |
| 54 | +```bash |
| 55 | +npm run dev |
| 56 | +``` |
| 57 | +This will start the Next.js development server at http://localhost:3000. |
| 58 | +The website auto-updates as you edit the file. |
| 59 | + |
| 60 | +The `pages/api` directory is mapped to `/api/*`. Files in this directory are treated as [API routes](https://nextjs.org/docs/api-routes/introduction) instead of React pages. |
33 | 61 |
|
34 |
| -## Deploy on Vercel |
| 62 | +## Screenshots |
| 63 | + |
| 64 | + |
| 65 | + |
| 66 | + |
35 | 67 |
|
36 |
| -The easiest way to deploy your Next.js app is to use the [Vercel Platform](https://vercel.com/new?utm_medium=default-template&filter=next.js&utm_source=create-next-app&utm_campaign=create-next-app-readme) from the creators of Next.js. |
37 | 68 |
|
38 |
| -Check out our [Next.js deployment documentation](https://nextjs.org/docs/deployment) for more details. |
| 69 | +## License |
| 70 | +This project is licensed under the MIT License. |
| 71 | + |
| 72 | +## Learn More |
| 73 | + |
| 74 | +To learn more about Next.js, take a look at the following resources: |
| 75 | + |
| 76 | +- [Next.js Documentation](https://nextjs.org/docs) - learn about Next.js features and API. |
| 77 | +- [Learn Next.js](https://nextjs.org/learn) - an interactive Next.js tutorial. |
0 commit comments