Skip to content

qjoly/une-pause-cafe

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

25 Commits
 
 
 
 
 
 
 
 
 
 

Repository files navigation


une-pause-cafe

◦ Coding breaks made caffeinated and collaborative!

◦ Developed with the software and tools listed below.

PHP Docker GitHub%20Actions Markdown

GitHub top language GitHub code size in bytes GitHub commit activity GitHub license

📒 Table of Contents


📍 Overview

The project is a web application that allows users to take a coffee break and read articles from selected categories. Thanks to the french website journalduhacker.net, the application fetches the latest articles sorted by category from the RSS feed and displays a random article title with a link. The application is developed with PHP and Docker, allowing it to run on any platform with Docker installed.


⚙️ Features

Feature Description
⚙️ Architecture The codebase follows a simple Apache PHP server architecture. The Dockerfile sets up an Apache server running PHP 8.0, with code in the 'src' directory accessible as the document root.
📖 Documentation No specific mention of documentation in the repository, limiting its evaluation.
🔗 Dependencies The codebase appears to have no external dependencies apart from the base Docker images for Apache and PHP.
🧩 Modularity The system's organization consists of multiple files with clear responsibilities. The main code resides in 'index.php', and the CSS files are modularity separated for different concerns.
✔️ Testing No information about testing strategies or tools, suggesting a lack of formalized testing in the codebase.
⚡️ Performance The system's performance mainly depends on the capabilities of the Apache server and the code optimization within 'index.php'. A full performance analysis cannot be done without further profiling.
🔀 Version Control The codebase uses Git for version control, allowing collaboration, code history tracking, and ease of deployment to production or other environments.

📂 Project Structure


🧩 Modules

Root
File Summary
Dockerfile This code sets up an Apache server running on PHP 8.0. It copies the contents of the'src' directory to the document root of the server, making them accessible. The server listens on port 80 for incoming connections.
Src
File Summary
index.php This code is an HTML page that allows users to take a coffee break and read an article from a selected category. It includes a form with radio buttons for category selection and a submit button to request an article. It uses PHP to handle form submissions, fetches RSS feed data based on the selected category, and displays a random article title with a link. The design includes custom stylesheets and background effects.
Css
File Summary
sanitize.css The code is a minified version of the sanitize.css file. It applies a set of default styles to normalize the appearance and behavior of HTML elements across different browsers. Some key features include box-sizing, line-height adjustments, removing default margins on body and heading elements, and setting default styles for form elements.
styles.css The code is a set of styles that resets default styles, centers elements, styles a logo, aligns radio buttons, styles a button and copyright text, creates a sticky footer, and adds animated effects to links.
background.css This code snippet is responsible for creating floating shapes animation on a given section of a webpage. The shapes are represented by list items with specified dimensions and position. They are animated to float upwards while rotating, gradually fading away, and changing their shape. The animation duration and delay can be customized for each shape.

🚀 Getting Started

📦 Installation

  1. Clone the une-pause-cafe repository:
git clone https://github.com/qjoly/une-pause-cafe
  1. Change to the project directory:
cd une-pause-cafe
  1. (method 1) Install webserver, php and copy files to webserver directory:
sudo apt update && \  
    sudo apt install apache2 php libapache2-mod-php
cp -r src/* /var/www/html/
  1. (method 2) Build and run docker image:
docker-compose up --build

🤝 Contributing

Contributions are always welcome! Please follow these steps:

  1. Fork the project repository. This creates a copy of the project on your account that you can modify without affecting the original project.
  2. Clone the forked repository to your local machine using a Git client like Git or GitHub Desktop.
  3. Create a new branch with a descriptive name (e.g., new-feature-branch or bugfix-issue-123).
git checkout -b new-feature-branch
  1. Make changes to the project's codebase.
  2. Commit your changes to your local branch with a clear commit message that explains the changes you've made.
git commit -m 'Implemented new feature.'
  1. Push your changes to your forked repository on GitHub using the following command
git push origin new-feature-branch
  1. Create a new pull request to the original project repository. In the pull request, describe the changes you've made and why they're necessary. The project maintainers will review your changes and provide feedback or merge them into the main branch.

👏 Acknowledgments

  • ℹ️ List any resources, contributors, inspiration, etc.

Le tout en moins de 200 lignes de code et sans framework. 🤓