[go: up one dir, main page]

Skip to content

zhouhao/findeasily.net

Repository files navigation

Website for findeasily.net

Codacy Badge CircleCI Known Vulnerabilities codebeat badge BCH compliance

Note

I use some commercial resources in my project, for which I have no right to sell or distribute for free, so please purchase your license before using it in your personal project. Thank you!

The Wish

  1. landlord can post their resources into this website easily(?How easily?)
  2. tenant can search house of rent by map, which is more informative

Quick start

  1. Please make sure you have Java11 and git installed
  2. git clone https://github.com/findeasily/findeasily.net.git
  3. Create a writable folder for file uploading with following commands:
    sudo mkdir -p /var/findeasily/resources  # create folder
    sudo chmod 777 /var/findeasily/resources  # make folder writable
    Or you can change the folder by updating this configuration.
  4. You may need to configure Intellij for lombok support, please see this document for more details.
  5. Follow this to start mysql & redis with docker
  6. You can create your own mailgun account, and update Email sending account here (NOTE: Just use your gmail here)
  7. SPRING_PROFILES_ACTIVE=dev ./mvnw spring-boot:run
  8. Visit http://localhost:8080/, if everything is OK, you can see the home page
  9. If you want to make google map work in dev mode, you can follow this doc to set up Google Map API key.
  10. Please follow this doc to set up Google recaptcha.

Note:

  1. I recommend Intellij as IDE(either Ultimate or Community).(Eclipse is OK, but as I know, Lombok plugin does not work well in Eclipse)
  2. You do not need to patch DB schemas manually, as flyway can do it automatically. (Attention: All DB change should have its SQL file in db/migration folder)
  3. For people who just want to read the source code, you can install Octotree plugin for Chrome

Tech Details

  1. Framework: Please see the project tags in the page top
  2. Infrastructure: MySQL, Redis for session, Nginx(https with Certbot), executable Jar with SystemCtl
  3. ... more ...

Resources

(Note: You need to purchase licenses before using these 2 resources into your personal project)

  1. The UI template I bought: Official Demo Link with Images
  2. The Email template I bought: Lil Commerce
  3. UI: how freemarker works in Spring to make java developer happy. Freemarker level up

Roadmap

  • Project configuration setup
  • User registration with email activation
  • User login
  • Password reset with Email
  • User profile page
    • Update profile picture
  • User can create/edit/delete listing info
    • Create
      • Add basic info
      • Upload photos
      • Add Amenities
    • Edit/Update
    • Delete
    • View
  • Enable listing display in home page
  • Add contact page

Discussion

Feel free to open new issues, or find me via Slack