diff --git a/.idea/.gitignore b/.idea/.gitignore new file mode 100644 index 0000000000000000000000000000000000000000..13566b81b018ad684f3a35fee301741b2734c8f4 --- /dev/null +++ b/.idea/.gitignore @@ -0,0 +1,8 @@ +# Default ignored files +/shelf/ +/workspace.xml +# Editor-based HTTP Client requests +/httpRequests/ +# Datasource local storage ignored files +/dataSources/ +/dataSources.local.xml diff --git a/.idea/compiler.xml b/.idea/compiler.xml new file mode 100644 index 0000000000000000000000000000000000000000..443fd7e3d6a1de6aeb65839fd16e71dffaf4a86d --- /dev/null +++ b/.idea/compiler.xml @@ -0,0 +1,20 @@ +<?xml version="1.0" encoding="UTF-8"?> +<project version="4"> + <component name="CompilerConfiguration"> + <annotationProcessing> + <profile name="Maven default annotation processors profile" enabled="true"> + <sourceOutputDir name="target/generated-sources/annotations" /> + <sourceTestOutputDir name="target/generated-test-sources/test-annotations" /> + <outputRelativeToContentRoot value="true" /> + </profile> + </annotationProcessing> + <bytecodeTargetLevel> + <module name="back-skeleton" target="17" /> + </bytecodeTargetLevel> + </component> + <component name="JavacSettings"> + <option name="ADDITIONAL_OPTIONS_OVERRIDE"> + <module name="back-skeleton" options="-parameters" /> + </option> + </component> +</project> \ No newline at end of file diff --git a/.idea/encodings.xml b/.idea/encodings.xml new file mode 100644 index 0000000000000000000000000000000000000000..ad0f0fdb8cb8a12cb66c28529938b01bcc7098e2 --- /dev/null +++ b/.idea/encodings.xml @@ -0,0 +1,6 @@ +<?xml version="1.0" encoding="UTF-8"?> +<project version="4"> + <component name="Encoding"> + <file url="file://$PROJECT_DIR$/back-skeleton/src/main/java" charset="UTF-8" /> + </component> +</project> \ No newline at end of file diff --git a/.idea/jarRepositories.xml b/.idea/jarRepositories.xml new file mode 100644 index 0000000000000000000000000000000000000000..712ab9d985c20018a0c97b93d2148ac1ffe588a5 --- /dev/null +++ b/.idea/jarRepositories.xml @@ -0,0 +1,20 @@ +<?xml version="1.0" encoding="UTF-8"?> +<project version="4"> + <component name="RemoteRepositoriesConfiguration"> + <remote-repository> + <option name="id" value="central" /> + <option name="name" value="Central Repository" /> + <option name="url" value="https://repo.maven.apache.org/maven2" /> + </remote-repository> + <remote-repository> + <option name="id" value="central" /> + <option name="name" value="Maven Central repository" /> + <option name="url" value="https://repo1.maven.org/maven2" /> + </remote-repository> + <remote-repository> + <option name="id" value="jboss.community" /> + <option name="name" value="JBoss Community repository" /> + <option name="url" value="https://repository.jboss.org/nexus/content/repositories/public/" /> + </remote-repository> + </component> +</project> \ No newline at end of file diff --git a/.idea/java-angular.iml b/.idea/java-angular.iml new file mode 100644 index 0000000000000000000000000000000000000000..d6ebd4805981b8400db3e3291c74a743fef9a824 --- /dev/null +++ b/.idea/java-angular.iml @@ -0,0 +1,9 @@ +<?xml version="1.0" encoding="UTF-8"?> +<module type="JAVA_MODULE" version="4"> + <component name="NewModuleRootManager" inherit-compiler-output="true"> + <exclude-output /> + <content url="file://$MODULE_DIR$" /> + <orderEntry type="inheritedJdk" /> + <orderEntry type="sourceFolder" forTests="false" /> + </component> +</module> \ No newline at end of file diff --git a/.idea/misc.xml b/.idea/misc.xml new file mode 100644 index 0000000000000000000000000000000000000000..b2eea277e84bef6438ad4959d8b6927d8e67f5c8 --- /dev/null +++ b/.idea/misc.xml @@ -0,0 +1,7 @@ +<?xml version="1.0" encoding="UTF-8"?> +<project version="4"> + <component name="ExternalStorageConfigurationManager" enabled="true" /> + <component name="ProjectRootManager" version="2" default="true"> + <output url="file://$PROJECT_DIR$/out" /> + </component> +</project> \ No newline at end of file diff --git a/.idea/modules.xml b/.idea/modules.xml new file mode 100644 index 0000000000000000000000000000000000000000..7b809a66b325a9b1b554764f677e816084a77157 --- /dev/null +++ b/.idea/modules.xml @@ -0,0 +1,8 @@ +<?xml version="1.0" encoding="UTF-8"?> +<project version="4"> + <component name="ProjectModuleManager"> + <modules> + <module fileurl="file://$PROJECT_DIR$/.idea/java-angular.iml" filepath="$PROJECT_DIR$/.idea/java-angular.iml" /> + </modules> + </component> +</project> \ No newline at end of file diff --git a/.idea/vcs.xml b/.idea/vcs.xml new file mode 100644 index 0000000000000000000000000000000000000000..35eb1ddfbbc029bcab630581847471d7f238ec53 --- /dev/null +++ b/.idea/vcs.xml @@ -0,0 +1,6 @@ +<?xml version="1.0" encoding="UTF-8"?> +<project version="4"> + <component name="VcsDirectoryMappings"> + <mapping directory="" vcs="Git" /> + </component> +</project> \ No newline at end of file diff --git a/README.md b/README.md index c34169590b9b7ed6e876ba1ea78c09044f606162..f0411caedaf1fe6ac349a201f52c2c2901b62a10 100644 --- a/README.md +++ b/README.md @@ -1,92 +1,183 @@ -# java-angular +# Set up cours Java Spring Boot + +## I. Installation +**2 méthodes d'installation sont possibles : par téléchargements Internet ou par Clé USB** +### Windows +#### Par téléchargements Internet : +- Docker : https://docs.docker.com/desktop/install/windows-install/ +- Intellij : https://www.jetbrains.com/fr-fr/idea/download/#section=windows + +#### Par clé : +- Récupère le fichier **Windows** et exécute les .exe + +### Mac +Pour les puces M1 ou M2 choisis *Apple Chip* & *(Apple Silicone)* +Pour les puces Intel choisis *Intel Chip* & *(Intel)* + +#### Par téléchargements Internet : +- Docker : https://docs.docker.com/desktop/install/mac-install/ +- Intellij : https://www.jetbrains.com/fr-fr/idea/download/#section=mac + +#### Par clé : +- Récupère le fichier **Mac** correspondant à la bonne puce et exécute les .exe + +### Linux +#### Commandes pour les installations : +- Docker : <br> + - `curl -fsSL https://get.docker.com -o get-docker.sh` <br> + - `sudo sh get-docker.sh` + - `sudo usermod -aG docker $USER` +- Intellij : <br> + - `sudo snap install intellij-idea-ultimate --classic` + +#### Par clé : +- Récupère les lignes de commandes dans le fichier du dossier Linux + +## II. Set up Intellij +### 1. Création compte +Intellij est un IDE super complet et est devenu un indispensable pour le développement de projet Java. <br> + +Avec ses recherches de fichiers optimisées, ses auto-complétions et ses raccourcis à gogo, Intellij améliore grandement l'expérience de développement. +Le Graal étant que Maven y est de base intégré et que tu puisses +télécharger n'importe quelle version de Java directement depuis ton IDE (non ce n'est pas un rêve !)<br> + +Cerise sur le gateau grâce à ton compte EPF, tu peux gratuitement obtenir une licence de la version payante (ultimate). +Elle est essentielle au bon déroulement du TP car, avec cette dernière, tu pourras notamment visualiser ta base de données et interagir avec elle directement depuis IntelliJ. <br> +Pour te créer un compte, suis ce lien et effectue les actions détaillées ci-dessous : https://www.jetbrains.com/fr-fr/idea/ + +<p align="center"> +<img src="img-readme/main-readme/img.png" width="500"/> +<img src="img-readme/main-readme/img2.png" width="500"/> +</p> + +### 2. Licence Intellij +Pour récupérer une licence gratuite utilise ce lien : https://jetbrains.com/shop/eform/students + +### 3. Lancer Intellij +Une fois ta licence récupérée, lance l'IDE et relie ton compte +<p align="center"> +<img src="img-readme/main-readme/img3.png" width="600"/> +<img src="img-readme/main-readme/img4.png" width="600"/> +</p> + +### 4. Clonage du projet +Pour récupérer le repository GitHub du TP, lance `git clone https://github.com/resourcepool/training-spring-boot.git` + +Tu y trouveras toutes les ressources nécessaires à la suite du TP. + +Dans Intellij, effectue ensuite les actions suivantes : +<p align="center"> +<img src="img-readme/main-readme/img5.png" width="400"/> +<img src="img-readme/main-readme/img6.png" width="400"/> +</p> + +### 5. Téléchargement de Java 17 +Depuis Intellij, tu peux directement télécharger Java 17 : <br> +<p align="center"> +<img src="img-readme/main-readme/img7.png"/> +<img src="img-readme/main-readme/img8.png" width="600"/> +<img src="img-readme/main-readme/img9.png" width="600"/> +<img src="img-readme/main-readme/img10.png" width="600"/> +</p> + +### 6. Ouvrir un terminal dans Intellij +<p align="center"> +<img src="img-readme/main-readme/img11.png" width="600"/> +</p> +<br> +Tu peux également changer de Shell (Surtout utile pour les Windows)<br> +<br> +<p align="center"> +<img src="img-readme/main-readme/img12.png" width="500"/> +</p> +<br> + +Sélectionne *Git Bash* +<p align="center"> +<img src="img-readme/main-readme/img13.png" width="500"/> +</p> + +## III. Set up +de la BDD via Docker +### 1. Docker +Lance le Docker Desktop en cliquant sur l'icône, tu dois obtenir l'écran suivant : +<p align="center"> +<img src="img-readme/main-readme/img14.png" width="800"/> +</p> +Ferme et ré-ouvre ton application IntelliJ pour que les changements effectués par l'installation de Docker soit pris en compte.<br> +Pour s'assurer que ton install Docker a bien fonctionné, lance la commande suivante dans ton terminal : <br> +`docker run hello-world` <br> +Tu dois obtenir ce résultat : <br> +<br> +<p align="center"> +<img src="img-readme/main-readme/img15.png" width="600"/> +</p> + +Tu peux alors lancer la base de données MariaDB qui sera utilisée tout au long du TP :<br> +`docker run --name mariadb --rm -e MYSQL_ROOT_PASSWORD=toor -e MYSQL_DATABASE=defaultdb -p 3306:3306 mariadb` + +### 2. Afficher la BDD dans Intellij +Effectue les étapes suivantes : +<p align="center"> +<img src="img-readme/main-readme/img16.png" width="700"/> +<img src="img-readme/main-readme/img17.png" width="700"/> +</p> + +Installe les drivers si besoin : +<p align="center"> +<img src="img-readme/main-readme/img18.png" width="500"/> +</p> + +Saisie les infos (1-3), puis test la connexion à la bdd (4) +<p align="center"> +<img src="img-readme/main-readme/img19.png" width="500"/> +<img src="img-readme/main-readme/img20.png"/> +</p><br> + +Si c'est valide, clique sur *OK* (5) + +### 3. Initialisation de la BDD +C'est cool d'avoir une BDD qui fonctionne mais c'est encore plus cool quand on peut lui insérer des données en 2 clics : +<p align="center"> +<img src="img-readme/main-readme/img21.png" width="500"/> +</p> +Clic droit + run : +<p align="center"> +<img src="img-readme/main-readme/img22.png" width="400"/> +<img src="img-readme/main-readme/img23.png" width="500"/> +</p> + +Tadaaaam (j'avoue un peu plus que 2 clics) +<p align="center"> +<img src="img-readme/main-readme/img24.png" width="500"/> +</p> + +## IV. Run du projet (c'est bientôt fini promis !) +**Deux** façons de faire : +<p align="center"> +<img src="img-readme/main-readme/img25.png" width="600"/> +</p> + +**OU** +<p align="center"> +<img src="img-readme/main-readme/img26.png" width="600"/> +</p> + +Ça ouvre : +<p align="center"> +<img src="img-readme/main-readme/img27.png" width="600"/> +</p> +Sélectionne le Java 17 préalablement téléchargé et ajoute l'option `-Xms256m -Xmx256m` (c'est pour éviter que Intellij mange toute ta RAM)<br> +<br> +<p align="center"> +<img src="img-readme/main-readme/img28.png" width="600"/> +<img src="img-readme/main-readme/img29.png" /> +<img src="img-readme/main-readme/img30.png" width="500"/> +</p> +Enfin :<br> +<br> +<p align="center"><img src="img-readme/main-readme/img31.png" width="800"/></p> + +Alors ça marche ? +<p align="center"><img src="img-readme/main-readme/img32.png" width="900"/></p> - - -## Getting started - -To make it easy for you to get started with GitLab, here's a list of recommended next steps. - -Already a pro? Just edit this README.md and make it your own. Want to make it easy? [Use the template at the bottom](#editing-this-readme)! - -## Add your files - -- [ ] [Create](https://docs.gitlab.com/ee/user/project/repository/web_editor.html#create-a-file) or [upload](https://docs.gitlab.com/ee/user/project/repository/web_editor.html#upload-a-file) files -- [ ] [Add files using the command line](https://docs.gitlab.com/ee/gitlab-basics/add-file.html#add-a-file-using-the-command-line) or push an existing Git repository with the following command: - -``` -cd existing_repo -git remote add origin https://gitlab.com/llenet/java-angular.git -git branch -M main -git push -uf origin main -``` - -## Integrate with your tools - -- [ ] [Set up project integrations](https://gitlab.com/llenet/java-angular/-/settings/integrations) - -## Collaborate with your team - -- [ ] [Invite team members and collaborators](https://docs.gitlab.com/ee/user/project/members/) -- [ ] [Create a new merge request](https://docs.gitlab.com/ee/user/project/merge_requests/creating_merge_requests.html) -- [ ] [Automatically close issues from merge requests](https://docs.gitlab.com/ee/user/project/issues/managing_issues.html#closing-issues-automatically) -- [ ] [Enable merge request approvals](https://docs.gitlab.com/ee/user/project/merge_requests/approvals/) -- [ ] [Set auto-merge](https://docs.gitlab.com/ee/user/project/merge_requests/merge_when_pipeline_succeeds.html) - -## Test and Deploy - -Use the built-in continuous integration in GitLab. - -- [ ] [Get started with GitLab CI/CD](https://docs.gitlab.com/ee/ci/quick_start/index.html) -- [ ] [Analyze your code for known vulnerabilities with Static Application Security Testing(SAST)](https://docs.gitlab.com/ee/user/application_security/sast/) -- [ ] [Deploy to Kubernetes, Amazon EC2, or Amazon ECS using Auto Deploy](https://docs.gitlab.com/ee/topics/autodevops/requirements.html) -- [ ] [Use pull-based deployments for improved Kubernetes management](https://docs.gitlab.com/ee/user/clusters/agent/) -- [ ] [Set up protected environments](https://docs.gitlab.com/ee/ci/environments/protected_environments.html) - -*** - -# Editing this README - -When you're ready to make this README your own, just edit this file and use the handy template below (or feel free to structure it however you want - this is just a starting point!). Thank you to [makeareadme.com](https://www.makeareadme.com/) for this template. - -## Suggestions for a good README -Every project is different, so consider which of these sections apply to yours. The sections used in the template are suggestions for most open source projects. Also keep in mind that while a README can be too long and detailed, too long is better than too short. If you think your README is too long, consider utilizing another form of documentation rather than cutting out information. - -## Name -Choose a self-explaining name for your project. - -## Description -Let people know what your project can do specifically. Provide context and add a link to any reference visitors might be unfamiliar with. A list of Features or a Background subsection can also be added here. If there are alternatives to your project, this is a good place to list differentiating factors. - -## Badges -On some READMEs, you may see small images that convey metadata, such as whether or not all the tests are passing for the project. You can use Shields to add some to your README. Many services also have instructions for adding a badge. - -## Visuals -Depending on what you are making, it can be a good idea to include screenshots or even a video (you'll frequently see GIFs rather than actual videos). Tools like ttygif can help, but check out Asciinema for a more sophisticated method. - -## Installation -Within a particular ecosystem, there may be a common way of installing things, such as using Yarn, NuGet, or Homebrew. However, consider the possibility that whoever is reading your README is a novice and would like more guidance. Listing specific steps helps remove ambiguity and gets people to using your project as quickly as possible. If it only runs in a specific context like a particular programming language version or operating system or has dependencies that have to be installed manually, also add a Requirements subsection. - -## Usage -Use examples liberally, and show the expected output if you can. It's helpful to have inline the smallest example of usage that you can demonstrate, while providing links to more sophisticated examples if they are too long to reasonably include in the README. - -## Support -Tell people where they can go to for help. It can be any combination of an issue tracker, a chat room, an email address, etc. - -## Roadmap -If you have ideas for releases in the future, it is a good idea to list them in the README. - -## Contributing -State if you are open to contributions and what your requirements are for accepting them. - -For people who want to make changes to your project, it's helpful to have some documentation on how to get started. Perhaps there is a script that they should run or some environment variables that they need to set. Make these steps explicit. These instructions could also be useful to your future self. - -You can also document commands to lint the code or run tests. These steps help to ensure high code quality and reduce the likelihood that the changes inadvertently break something. Having instructions for running tests is especially helpful if it requires external setup, such as starting a Selenium server for testing in a browser. - -## Authors and acknowledgment -Show your appreciation to those who have contributed to the project. - -## License -For open source projects, say how it is licensed. - -## Project status -If you have run out of energy or time for your project, put a note at the top of the README saying that development has slowed down or stopped completely. Someone may choose to fork your project or volunteer to step in as a maintainer or owner, allowing your project to keep going. You can also make an explicit request for maintainers. diff --git a/back-skeleton/.env b/back-skeleton/.env new file mode 100644 index 0000000000000000000000000000000000000000..135377450651ff438239031c446e52187f8e665e --- /dev/null +++ b/back-skeleton/.env @@ -0,0 +1,3 @@ +DATABASE_USER=user +DATABASE_PASSWORD=password +DATABASE_NAME=db diff --git a/back-skeleton/.idea/.gitignore b/back-skeleton/.idea/.gitignore new file mode 100644 index 0000000000000000000000000000000000000000..13566b81b018ad684f3a35fee301741b2734c8f4 --- /dev/null +++ b/back-skeleton/.idea/.gitignore @@ -0,0 +1,8 @@ +# Default ignored files +/shelf/ +/workspace.xml +# Editor-based HTTP Client requests +/httpRequests/ +# Datasource local storage ignored files +/dataSources/ +/dataSources.local.xml diff --git a/back-skeleton/.idea/compiler.xml b/back-skeleton/.idea/compiler.xml new file mode 100644 index 0000000000000000000000000000000000000000..007e21c7dac0f3cc8f12b590eebf8f338dc7ab45 --- /dev/null +++ b/back-skeleton/.idea/compiler.xml @@ -0,0 +1,18 @@ +<?xml version="1.0" encoding="UTF-8"?> +<project version="4"> + <component name="CompilerConfiguration"> + <annotationProcessing> + <profile name="Maven default annotation processors profile" enabled="true"> + <sourceOutputDir name="target/generated-sources/annotations" /> + <sourceTestOutputDir name="target/generated-test-sources/test-annotations" /> + <outputRelativeToContentRoot value="true" /> + <module name="back-skeleton" /> + </profile> + </annotationProcessing> + </component> + <component name="JavacSettings"> + <option name="ADDITIONAL_OPTIONS_OVERRIDE"> + <module name="back-skeleton" options="-parameters" /> + </option> + </component> +</project> \ No newline at end of file diff --git a/back-skeleton/.idea/encodings.xml b/back-skeleton/.idea/encodings.xml new file mode 100644 index 0000000000000000000000000000000000000000..63e900193296f8ed911a1b9f5b051cf908099431 --- /dev/null +++ b/back-skeleton/.idea/encodings.xml @@ -0,0 +1,6 @@ +<?xml version="1.0" encoding="UTF-8"?> +<project version="4"> + <component name="Encoding"> + <file url="file://$PROJECT_DIR$/src/main/java" charset="UTF-8" /> + </component> +</project> \ No newline at end of file diff --git a/back-skeleton/.idea/jarRepositories.xml b/back-skeleton/.idea/jarRepositories.xml new file mode 100644 index 0000000000000000000000000000000000000000..712ab9d985c20018a0c97b93d2148ac1ffe588a5 --- /dev/null +++ b/back-skeleton/.idea/jarRepositories.xml @@ -0,0 +1,20 @@ +<?xml version="1.0" encoding="UTF-8"?> +<project version="4"> + <component name="RemoteRepositoriesConfiguration"> + <remote-repository> + <option name="id" value="central" /> + <option name="name" value="Central Repository" /> + <option name="url" value="https://repo.maven.apache.org/maven2" /> + </remote-repository> + <remote-repository> + <option name="id" value="central" /> + <option name="name" value="Maven Central repository" /> + <option name="url" value="https://repo1.maven.org/maven2" /> + </remote-repository> + <remote-repository> + <option name="id" value="jboss.community" /> + <option name="name" value="JBoss Community repository" /> + <option name="url" value="https://repository.jboss.org/nexus/content/repositories/public/" /> + </remote-repository> + </component> +</project> \ No newline at end of file diff --git a/back-skeleton/.idea/misc.xml b/back-skeleton/.idea/misc.xml new file mode 100644 index 0000000000000000000000000000000000000000..0abcc97ca28726fcb85e5bc75fb8313b39afb9fd --- /dev/null +++ b/back-skeleton/.idea/misc.xml @@ -0,0 +1,12 @@ +<?xml version="1.0" encoding="UTF-8"?> +<project version="4"> + <component name="ExternalStorageConfigurationManager" enabled="true" /> + <component name="MavenProjectsManager"> + <option name="originalFiles"> + <list> + <option value="$PROJECT_DIR$/pom.xml" /> + </list> + </option> + </component> + <component name="ProjectRootManager" version="2" languageLevel="JDK_17" default="true" project-jdk-name="corretto-17" project-jdk-type="JavaSDK" /> +</project> \ No newline at end of file diff --git a/back-skeleton/.idea/vcs.xml b/back-skeleton/.idea/vcs.xml new file mode 100644 index 0000000000000000000000000000000000000000..6c0b8635858dc7ad44b93df54b762707ce49eefc --- /dev/null +++ b/back-skeleton/.idea/vcs.xml @@ -0,0 +1,6 @@ +<?xml version="1.0" encoding="UTF-8"?> +<project version="4"> + <component name="VcsDirectoryMappings"> + <mapping directory="$PROJECT_DIR$/.." vcs="Git" /> + </component> +</project> \ No newline at end of file diff --git a/back-skeleton/target/classes/application.properties b/back-skeleton/target/classes/application.properties new file mode 100644 index 0000000000000000000000000000000000000000..8b137891791fe96927ad78e64b0aad7bded08bdc --- /dev/null +++ b/back-skeleton/target/classes/application.properties @@ -0,0 +1 @@ + diff --git a/back-skeleton/target/classes/com/takima/backskeleton/BackSkeletonApplication.class b/back-skeleton/target/classes/com/takima/backskeleton/BackSkeletonApplication.class new file mode 100644 index 0000000000000000000000000000000000000000..deea4b72b2a3d867c54a190601259fcc338d58d2 Binary files /dev/null and b/back-skeleton/target/classes/com/takima/backskeleton/BackSkeletonApplication.class differ diff --git a/epf-front-skeleton-main/.idea/.gitignore b/epf-front-skeleton-main/.idea/.gitignore new file mode 100644 index 0000000000000000000000000000000000000000..13566b81b018ad684f3a35fee301741b2734c8f4 --- /dev/null +++ b/epf-front-skeleton-main/.idea/.gitignore @@ -0,0 +1,8 @@ +# Default ignored files +/shelf/ +/workspace.xml +# Editor-based HTTP Client requests +/httpRequests/ +# Datasource local storage ignored files +/dataSources/ +/dataSources.local.xml diff --git a/epf-front-skeleton-main/.idea/epf-front-skeleton-main.iml b/epf-front-skeleton-main/.idea/epf-front-skeleton-main.iml new file mode 100644 index 0000000000000000000000000000000000000000..a6e45c7be05c6d2d385c288df54b419b0bce2c17 --- /dev/null +++ b/epf-front-skeleton-main/.idea/epf-front-skeleton-main.iml @@ -0,0 +1,12 @@ +<?xml version="1.0" encoding="UTF-8"?> +<module type="JAVA_MODULE" version="4"> + <component name="NewModuleRootManager" inherit-compiler-output="true"> + <exclude-output /> + <content url="file://$MODULE_DIR$"> + <excludeFolder url="file://$MODULE_DIR$/dist" /> + <excludeFolder url="file://$MODULE_DIR$/tmp" /> + </content> + <orderEntry type="inheritedJdk" /> + <orderEntry type="sourceFolder" forTests="false" /> + </component> +</module> \ No newline at end of file diff --git a/epf-front-skeleton-main/.idea/misc.xml b/epf-front-skeleton-main/.idea/misc.xml new file mode 100644 index 0000000000000000000000000000000000000000..639900d13c6182e452e33a3bd638e70a0146c785 --- /dev/null +++ b/epf-front-skeleton-main/.idea/misc.xml @@ -0,0 +1,6 @@ +<?xml version="1.0" encoding="UTF-8"?> +<project version="4"> + <component name="ProjectRootManager"> + <output url="file://$PROJECT_DIR$/out" /> + </component> +</project> \ No newline at end of file diff --git a/epf-front-skeleton-main/.idea/modules.xml b/epf-front-skeleton-main/.idea/modules.xml new file mode 100644 index 0000000000000000000000000000000000000000..f674e5f6858efac5dd9f470556a40f9b5b7e78e9 --- /dev/null +++ b/epf-front-skeleton-main/.idea/modules.xml @@ -0,0 +1,8 @@ +<?xml version="1.0" encoding="UTF-8"?> +<project version="4"> + <component name="ProjectModuleManager"> + <modules> + <module fileurl="file://$PROJECT_DIR$/.idea/epf-front-skeleton-main.iml" filepath="$PROJECT_DIR$/.idea/epf-front-skeleton-main.iml" /> + </modules> + </component> +</project> \ No newline at end of file diff --git a/epf-front-skeleton-main/.idea/vcs.xml b/epf-front-skeleton-main/.idea/vcs.xml new file mode 100644 index 0000000000000000000000000000000000000000..6c0b8635858dc7ad44b93df54b762707ce49eefc --- /dev/null +++ b/epf-front-skeleton-main/.idea/vcs.xml @@ -0,0 +1,6 @@ +<?xml version="1.0" encoding="UTF-8"?> +<project version="4"> + <component name="VcsDirectoryMappings"> + <mapping directory="$PROJECT_DIR$/.." vcs="Git" /> + </component> +</project> \ No newline at end of file diff --git a/img-readme/main-readme/img.png b/img-readme/main-readme/img.png new file mode 100644 index 0000000000000000000000000000000000000000..0025f9656534a3f0d436a777809a017b87db1025 Binary files /dev/null and b/img-readme/main-readme/img.png differ diff --git a/img-readme/main-readme/img10.png b/img-readme/main-readme/img10.png new file mode 100644 index 0000000000000000000000000000000000000000..e633ba441bf9676ee878170072b391c20ed1b438 Binary files /dev/null and b/img-readme/main-readme/img10.png differ diff --git a/img-readme/main-readme/img11.png b/img-readme/main-readme/img11.png new file mode 100644 index 0000000000000000000000000000000000000000..9012a40ebc9c0c61206794aee7fbe789273cbf7d Binary files /dev/null and b/img-readme/main-readme/img11.png differ diff --git a/img-readme/main-readme/img12.png b/img-readme/main-readme/img12.png new file mode 100644 index 0000000000000000000000000000000000000000..816d05c845f59a8201233a139ec6ef1add1db677 Binary files /dev/null and b/img-readme/main-readme/img12.png differ diff --git a/img-readme/main-readme/img13.png b/img-readme/main-readme/img13.png new file mode 100644 index 0000000000000000000000000000000000000000..f2553a8ef30ae034c750e5c9b49c65fd47415b32 Binary files /dev/null and b/img-readme/main-readme/img13.png differ diff --git a/img-readme/main-readme/img14.png b/img-readme/main-readme/img14.png new file mode 100644 index 0000000000000000000000000000000000000000..911db141840b88cc14559d41a85a775dbe9effcf Binary files /dev/null and b/img-readme/main-readme/img14.png differ diff --git a/img-readme/main-readme/img15.png b/img-readme/main-readme/img15.png new file mode 100644 index 0000000000000000000000000000000000000000..ecc174241ee5222b8682b6925ceab23859880466 Binary files /dev/null and b/img-readme/main-readme/img15.png differ diff --git a/img-readme/main-readme/img16.png b/img-readme/main-readme/img16.png new file mode 100644 index 0000000000000000000000000000000000000000..4107799a98630f251052d00e956b42d8e64d4c4e Binary files /dev/null and b/img-readme/main-readme/img16.png differ diff --git a/img-readme/main-readme/img17.png b/img-readme/main-readme/img17.png new file mode 100644 index 0000000000000000000000000000000000000000..77d9a292bc6566f21723f5b8e13b60b8668ed034 Binary files /dev/null and b/img-readme/main-readme/img17.png differ diff --git a/img-readme/main-readme/img18.png b/img-readme/main-readme/img18.png new file mode 100644 index 0000000000000000000000000000000000000000..a585eb01ed32a7b01c92c7b9a2b620dba13f8a5c Binary files /dev/null and b/img-readme/main-readme/img18.png differ diff --git a/img-readme/main-readme/img19.png b/img-readme/main-readme/img19.png new file mode 100644 index 0000000000000000000000000000000000000000..99afdb077f4e87596148ef4f2c8ca336566966f0 Binary files /dev/null and b/img-readme/main-readme/img19.png differ diff --git a/img-readme/main-readme/img2.png b/img-readme/main-readme/img2.png new file mode 100644 index 0000000000000000000000000000000000000000..5922858611267e771292829ac5b35baf13499b4f Binary files /dev/null and b/img-readme/main-readme/img2.png differ diff --git a/img-readme/main-readme/img20.png b/img-readme/main-readme/img20.png new file mode 100644 index 0000000000000000000000000000000000000000..44e0ee4bef4a02ad92e051542efcb4cd3a1603fe Binary files /dev/null and b/img-readme/main-readme/img20.png differ diff --git a/img-readme/main-readme/img21.png b/img-readme/main-readme/img21.png new file mode 100644 index 0000000000000000000000000000000000000000..cdd10e39bed67ae538c8b9a6c1187146c0d5f9c1 Binary files /dev/null and b/img-readme/main-readme/img21.png differ diff --git a/img-readme/main-readme/img22.png b/img-readme/main-readme/img22.png new file mode 100644 index 0000000000000000000000000000000000000000..f08802fa557e95499c96c448fcb8957fd5cba3a5 Binary files /dev/null and b/img-readme/main-readme/img22.png differ diff --git a/img-readme/main-readme/img23.png b/img-readme/main-readme/img23.png new file mode 100644 index 0000000000000000000000000000000000000000..8cc32502c0feb4ade3dd459b202120457ef2d87a Binary files /dev/null and b/img-readme/main-readme/img23.png differ diff --git a/img-readme/main-readme/img24.png b/img-readme/main-readme/img24.png new file mode 100644 index 0000000000000000000000000000000000000000..98481d2a275997134aff412c99622652e2c27d1b Binary files /dev/null and b/img-readme/main-readme/img24.png differ diff --git a/img-readme/main-readme/img25.png b/img-readme/main-readme/img25.png new file mode 100644 index 0000000000000000000000000000000000000000..0a9f72470d9a82359ec2a9c9a55fcc512349b97e Binary files /dev/null and b/img-readme/main-readme/img25.png differ diff --git a/img-readme/main-readme/img26.png b/img-readme/main-readme/img26.png new file mode 100644 index 0000000000000000000000000000000000000000..d686eb6eeeeff1ad663569c4c5654074e8480810 Binary files /dev/null and b/img-readme/main-readme/img26.png differ diff --git a/img-readme/main-readme/img27.png b/img-readme/main-readme/img27.png new file mode 100644 index 0000000000000000000000000000000000000000..0925ce1db2a0f431edcdc5fc3109f85919d0b565 Binary files /dev/null and b/img-readme/main-readme/img27.png differ diff --git a/img-readme/main-readme/img28.png b/img-readme/main-readme/img28.png new file mode 100644 index 0000000000000000000000000000000000000000..3817f48c8ef6319b6ac1a252db7f22892175c16a Binary files /dev/null and b/img-readme/main-readme/img28.png differ diff --git a/img-readme/main-readme/img29.png b/img-readme/main-readme/img29.png new file mode 100644 index 0000000000000000000000000000000000000000..4e78c1b73530cacb44e9748f9f0ae2ee36e534cf Binary files /dev/null and b/img-readme/main-readme/img29.png differ diff --git a/img-readme/main-readme/img3.png b/img-readme/main-readme/img3.png new file mode 100644 index 0000000000000000000000000000000000000000..a23e1bb4dbbd95ae0c3cf467e2adc0115ec1623d Binary files /dev/null and b/img-readme/main-readme/img3.png differ diff --git a/img-readme/main-readme/img30.png b/img-readme/main-readme/img30.png new file mode 100644 index 0000000000000000000000000000000000000000..ae5cf50894d46f55ffa3660c25ab41aeffdef233 Binary files /dev/null and b/img-readme/main-readme/img30.png differ diff --git a/img-readme/main-readme/img31.png b/img-readme/main-readme/img31.png new file mode 100644 index 0000000000000000000000000000000000000000..7be2ed0b68abede373ce4a79453e67d9e475abcf Binary files /dev/null and b/img-readme/main-readme/img31.png differ diff --git a/img-readme/main-readme/img32.png b/img-readme/main-readme/img32.png new file mode 100644 index 0000000000000000000000000000000000000000..8967d79fe936ba19cfd34930004ed271bc796340 Binary files /dev/null and b/img-readme/main-readme/img32.png differ diff --git a/img-readme/main-readme/img4.png b/img-readme/main-readme/img4.png new file mode 100644 index 0000000000000000000000000000000000000000..c31e0cca15d1aeaa8cca656c3b7d563e514bc038 Binary files /dev/null and b/img-readme/main-readme/img4.png differ diff --git a/img-readme/main-readme/img5.png b/img-readme/main-readme/img5.png new file mode 100644 index 0000000000000000000000000000000000000000..a62d185c8066a02dda315b6b54a1ec4111e28c8e Binary files /dev/null and b/img-readme/main-readme/img5.png differ diff --git a/img-readme/main-readme/img6.png b/img-readme/main-readme/img6.png new file mode 100644 index 0000000000000000000000000000000000000000..5f8fcfa3e1e69f983bbd1b1a8c23d97ef6eda1e0 Binary files /dev/null and b/img-readme/main-readme/img6.png differ diff --git a/img-readme/main-readme/img7.png b/img-readme/main-readme/img7.png new file mode 100644 index 0000000000000000000000000000000000000000..15adaeb6e7cdbef9d8850edb26d1a4a7c42aedcf Binary files /dev/null and b/img-readme/main-readme/img7.png differ diff --git a/img-readme/main-readme/img8.png b/img-readme/main-readme/img8.png new file mode 100644 index 0000000000000000000000000000000000000000..284beb81b611a0b2d73c48d9ccda1b42f9df0616 Binary files /dev/null and b/img-readme/main-readme/img8.png differ diff --git a/img-readme/main-readme/img9.png b/img-readme/main-readme/img9.png new file mode 100644 index 0000000000000000000000000000000000000000..3484e8fa2442f00d2698b95676bba7d883fd1c01 Binary files /dev/null and b/img-readme/main-readme/img9.png differ diff --git a/projects-ideas/1-OnlineCV.md b/projects-ideas/1-OnlineCV.md new file mode 100644 index 0000000000000000000000000000000000000000..db182ca2713753a8535bfee66661e431bb34a8d4 --- /dev/null +++ b/projects-ideas/1-OnlineCV.md @@ -0,0 +1,32 @@ +# Projet CV en ligne + +Vous donner de la visibilité sur le web via la création de votre CV en ligne + +# Le projet +Votre but est de créer à la fois une section `publique` et une section `administration` pour votre propre site web. +Votre CV en ligne a pour objectif de mettre en avant votre savoir-faire technologique et aussi de présenter de manière élégante vos expériences passées pour vous différencier un peu des autres et ainsi augmenter votre présence sur le web. + +En particulier, les fonctionnalités suivantes seront **requises** : + +**Panneau d'Administration** +* Créer / éditer / supprimer toutes les sections de votre profil : experience, education, skills, hobbies, etc... +* Éditer la meta-data de chaque élément de votre profil : nom, email, photo de profil, bannière, etc... +* Ajouter des liens vers réseaux sociaux professionnels : LinkedIn, Github, Twitter, Instagram etc... + +**Partie publique** +* Afficher votre CV en une ou plusieurs pages (navigation) +* Autoriser à être contacté à travers un formulaire de contact, qui vous enverra un email directement + +Vous n'avez pas à implémenter de quelconque sécurité pour le moment (login / password pour l'administration par exemple). + +> Vous êtes libre de créer vos modèles comme vous le souhaitez, mais ils devront au moins contenir : experience, education, skills, projects / hobbies. + +# Bonus +Vous avez **déjà tout terminé ?** +Voici quelques features qui rendront votre plateforme encore plus attrayante : +* Autoriser l'import / export des données de votre CV vers un fichier JSON externe +* Importer la donnée depuis votre compte LinkedIn +* Proposer une customisation des couleurs / de la bannière +* Implémenter la sécurité (utiliser Firebase Auth) +* Ajouter un moyen de s'inscrire à une newsletter et implémenter la gestion de la newsletter dans la section admin +* Faire en sorte que toutes vos sections utilisent du Markdown et utiliser un éditeur Markdown pour formater votre contenu \ No newline at end of file diff --git a/projects-ideas/2-Quiz.md b/projects-ideas/2-Quiz.md new file mode 100644 index 0000000000000000000000000000000000000000..a90d9e2a458b213c93e18e9387b1f05b16c1b4c6 --- /dev/null +++ b/projects-ideas/2-Quiz.md @@ -0,0 +1,29 @@ +# Projet quiz + +Développer des quiz pour tester vos connaissances et vous hisser à la première place du classement + +# Le projet +Votre but est de créer à la fois une section `publique` et une section `administration` pour votre propre site web. +Créer un site web permettant de répondre à des quiz. Vous avez carte blanche pour le sujet de ces quiz. Vous pouvez faire des quiz classiques avec des énoncés sous la forme de questions, ou alors montrer des photos d'acteurs ou d'affiches de films, et faire deviner leur nom... Faites-vous plaisir ! + +En particulier, les fonctionnalités suivantes seront **requises** : + +**Panneau d'Administration** +* Créer / éditer / supprimer des quiz, composés de multiples questions. Chaque question possède un enoncé, éventuellement des réponses pré-définies, et surtout des réponses valides. +* Pouvoir créer / modifier / supprimer des utilisateurs. Supprimer un utilisateur doit également supprimer ses résultats dans les différents quiz. + +**Partie publique** +* Afficher la liste des quiz disponibles +* Pouvoir lancer une partie, c'est à dire répondre à toutes les questions d'un quiz +* Voir le classement des joueurs sur chaque quiz +* Afficher le profil de chaque joueur, montrant la liste des quiz auquel il/elle a participé, ainsi que ses scores + +Vous n'avez pas à implémenter de quelconque sécurité pour le moment (login / password pour l'administration par exemple). + +> TODO Vous êtes libre de créer vos modèles comme vous le souhaitez, mais ils devront au moins contenir : experience, education, skills, projects / hobbies. + +# Bonus +Vous avez **déjà tout terminé ?** +Voici quelques features qui rendront votre plateforme encore plus attrayante : +* Pouvoir inviter un ami à répondre à un quiz +* TODO \ No newline at end of file diff --git a/projects-ideas/3-Rating.md b/projects-ideas/3-Rating.md new file mode 100644 index 0000000000000000000000000000000000000000..4dbdd8bcfdba66418b347c6d46519ee44148474d --- /dev/null +++ b/projects-ideas/3-Rating.md @@ -0,0 +1,30 @@ +# Projet site d'avis + +Faire un site web recensant les avis des utilisateurs sur des films/bars/restaurants + +# Le projet +Votre but est de créer à la fois une section `publique` et une section `administration` pour votre propre site web. +Créer un site web où les utilisateurs vont noter des films, des lieux publics. Vous êtes libres de choisir ce que les utilisateurs vont pouvoir noter sur votre site. + +En particulier, les fonctionnalités suivantes seront **requises** : + +**Panneau d'Administration** +* Créer / éditer / supprimer des films ou lieux. + * Pour des films, pouvoir ajouter l'affiche, le nom, le réalisateur, le synopsis ainsi que la date de sortie + * Pour des lieux, pouvoir ajouter le titre, l'adresse, les horaires d'ouverture +* Pouvoir créer / modifier / supprimer des utilisateurs. Supprimer un utilisateur doit également supprimer ses avis. + +**Partie publique** +* Afficher la liste des lieux/films +* Pouvoir donner un avis sur un lieu/film, avec une note, un résumé et optionnellement un avis détaillé +* Afficher un graphique TODO voir cette partie avec Laurine +* Afficher le classement du meilleur lieu/film via une moyenne des notes des différents avis + +Vous n'avez pas à implémenter de quelconque sécurité pour le moment (login / password pour l'administration par exemple). + +> Vous êtes libre de créer vos modèles comme vous le souhaitez, mais ils devront au moins contenir : experience, education, skills, projects / hobbies. + +# Bonus +Vous avez **déjà tout terminé ?** +Voici quelques features qui rendront votre plateforme encore plus attrayante : +* TODO \ No newline at end of file