Skip to content

My Books: A fully functional website that allows you to add and remove books from a list. Built with ES6 modules and semantic HTML, and using the Luxon library for date handling. Check it out now!

Alejandroq12/my-books-ES6

Repository files navigation

My Books

logo

My Books

📗 Table of Contents

📖 My Books

"My Books" is an intuitive web application that showcases a dynamic list of books, offering the ability to add and remove books seamlessly. Throughout the development process, I have honed my skills in managing data with JavaScript, resulting in a highly interactive user experience. By adhering to a medium-fidelity wireframe, the application's user interface has been meticulously crafted to meet modern design standards. This project not only showcases my adeptness in web development but also demonstrates my ability to create user-friendly applications."

🛠 Built With

Tech Stack

Client

Key Features

  • A fully functional website
  • Modular JavaScript: The application is built using JavaScript modules, resulting in a well-organized, maintainable, and scalable codebase.
  • Semantic HTML: By utilizing semantic HTML elements, the website's structure is meaningful and accessible, improving both search engine optimization and the user experience for individuals using assistive technologies.

(back to top)

🚀 Live Demo

(back to top)

💻 Getting Started

To get a local copy up and running, follow these steps:

Prerequisites

To work with this project, you need:

  1. A modern web browser to view the website (e.g., Google Chrome, Firefox, Safari, or Microsoft Edge).

  2. A code editor for editing the code, such as Visual Studio Code, Atom, or Sublime Text.

  3. Node.js installed on your machine. You can download the latest version here.

  4. npm (Node Package Manager) installed, which comes bundled with Node.js.

  5. After cloning the project, make sure to run npm install to install all the necessary dependencies, including Luxon and linters, specified in the package.json file.

Setup

Clone this repository to your desired folder:

  1. Clone it using your terminal:
git clone https://github.com/Alejandroq12/my-books-ES6.git
  1. If the previous method does not work you may also download the repo as a .zip file and once you decompress the .zip file you are ready to use it.

Important: do not forget to clone the repo in the correct folder, probably you will use the following commands to achieve that in your terminal:

  1. To navigate a certain folder:
cd <folder name>
  1. To navigate to the previous folder:
cd ..

Install

Install this project with:

  1. To view this project, no additional installation is required.

  2. However, if you want to test the linter configured for detecting errors or use Luxon library, complete the following steps:

npm init -y
npm install

  1. If you run npm install, remember to create a .gitignore file to prevent the node_modules folder from being uploaded to GitHub:
.gitignore
node_modules/

Usage

To use this project locally on your computer, follow these steps:

  1. Clone the repository or download the project files.
  2. Navigate to the project directory where the index.html file is located.
  3. Open the index.html file with a web browser.
  • Optional: You can also use the Live Server extension for Visual Studio Code to view the website with live reloading. -- Install the Live Server extension in Visual Studio Code. -- Open the project folder in Visual Studio Code. -- Right-click on the index.html file and select "Open with Live Server".

The website should now be displayed in your browser, and you can interact with the application as intended.

Run tests

  1. Make sure all the linters and their configurations are installed and set up correctly in your project. If you haven't installed them yet, run npm install in your project directory to install the packages listed in your package.json file.

  2. Run each linter with the following commands:

  • For ESLint:
npx eslint .

  • For Stylelint:
npx stylelint "**/*.{css,scss}"

  • For hint:
npx hint .

  1. Review the output of each linter and fix any issues reported.

Deployment

You can deploy this project using GitHub pages:

  1. Log in to your GitHub account and navigate to the repository that contains your website files.
  2. Make sure that your website files are located in the main branch and in the root directory of the repository.
  3. If your website is not already live, make sure that the index.html file is the main page of your website.
  4. Click on the "Settings" tab in your repository.
  5. Scroll down to the "GitHub Pages" section.
  6. In the "Source" dropdown menu, select the branch where your website files are located. For a simple website with only HTML and CSS, this is typically the main branch.
  7. In the "Path" field, make sure that the root directory is specified (i.e., "/").
  8. Click "Save" to generate your website.
  9. Wait a few minutes for GitHub to build and deploy your website.
  10. Once the website is deployed, visit the GitHub Pages URL to view your site.

(back to top)

👥 Authors

👤 Julio Quezada

(back to top)

🔭 Future Features

  • I will add media queries for larger screens
  • I will use JavaScript to add more interactivity

(back to top)

🤝 Contributing

Contributions, issues, and feature requests are welcome!

Feel free to check the issues page.

(back to top)

⭐️ Show your support

If you like this project please give a star. Thanks in advance.

(back to top)

🙏 Acknowledgments

I would like to thank Wes Bos because I learned how to implement flexbox with his free tutorial:

(back to top)

❓ FAQ (OPTIONAL)

  • Are you going to use React in the future?

    • Yes! I will transform this website into a React App.
  • Did you create this website from scratch?

    • Yes! From zero, and I will improve it a lot.

(back to top)

📝 License

This project is MIT licensed.

(back to top)

About

My Books: A fully functional website that allows you to add and remove books from a list. Built with ES6 modules and semantic HTML, and using the Luxon library for date handling. Check it out now!

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published