Awesome
<h1 align="center">Shuttery: Appwrite - React Demo 💻</h1> <p align = center> <img alt="Project Logo" src="https://raw.githubusercontent.com/muKaustav/Appwrite-DemoApp-Hacktoberfest-2021/main/assets/shuttery.jpg" target="_blank" /> </p> <h2 align='center'>A demo web app built with React JS and Appwrite backend.</h2><br/>📚 | Introduction
- This web app fetches and lets users download beautiful pictures from <b>Unsplash</b> to satisfy their artistic needs.
- Current parameters: <b>Search, Orientation, Count (currently capped to 10)</b>.
- This app demonstrates <i>Authentication</i> via <b>Google OAuth using an Appwrite backend</b>.
- Shuttery is built with <b>React JS, Appwrite Web, and Unsplash API</b>.<br>
🚀 | Usage
- Appwrite Web: <a target='_blank' href='https://appwrite.io/'>Installation</a>, <a target='_blank' href='https://appwrite.io/docs'>Documentation</a> and <a target='_blank' href='https://30days.appwrite.io/'>Resources</a>.
- Clone this repository:<br>
git clone https://github.com/muKaustav/Appwrite-DemoApp-Hacktoberfest-2021.git
- Install necessary libraries:<br>
npm install
- Enjoy the project! 😉
📁 | Folder Structure
- Replace the <b>Endpoint and Project ID</b> in <i>src/Appwrite.js</i>.
const sdk = new Appwrite();
sdk
.setEndpoint("ENDPOINT URL") // set your own endpoint
.setProject("PROJECT ID"); // set your own project id
- Replace the redirect and failure routes for Google OAuth in <i>src/Appwrite.js</i>. <i>(<a target='_blank' href='https://dev.to/appwrite/30daysofappwrite-oauth-providers-3jf6'>Article for reference</a>)</i>
sdk.account.createOAuth2Session(
"google",
"http://localhost:3000/",
"http://localhost:3000/login",
["profile"]
);
<!-- <br> -->
public
├───index.html
src
├───components
│ ├───Footer
│ │ ├───Footer.jsx
│ │ └───Footer.scss
│ ├───Form
│ │ ├───Form.jsx
│ │ ├───Form.scss
│ │ └───loader.png
│ ├───Image
│ │ ├───Image.jsx
│ │ └───Image.scss
│ └───Navbar
│ ├───Navbar.jsx
│ └───Navbar.scss
└───routes
├───Application
│ ├───App.jsx
│ └───Application.scss
├───Login
│ ├───Login.jsx
│ └───Login.scss
└───ProtectedRoute.jsx
<br/>
📷 | Screenshots
<p align = center> <img alt="Project Logo" src="https://raw.githubusercontent.com/muKaustav/Appwrite-DemoApp-Hacktoberfest-2021/main/assets/login.png" target="_blank" /> <img alt="Project Logo" src="https://raw.githubusercontent.com/muKaustav/Appwrite-DemoApp-Hacktoberfest-2021/main/assets/home.png" target="_blank" /> <img alt="Project Logo" src="https://raw.githubusercontent.com/muKaustav/Appwrite-DemoApp-Hacktoberfest-2021/main/assets/result.png" target="_blank" /> </p> <br/>🍻 | Contributing
Contributions, issues and feature requests are welcome.<br> Feel free to check issues page if you want to contribute.
<br/>🧑🏽 | Author
Kaustav Mukhopadhyay
- Linkedin: @kaustavmukhopadhyay
- Github: @muKaustav
🙌 | Show your support
Drop a ⭐️ if this project helped you!
<br/>📝 | License
Copyright © 2021 Kaustav Mukhopadhyay.<br /> This project is MIT licensed.