Code Monkey home page Code Monkey logo

moikiitos's Introduction

Moikiitos

This is a simple Microblogging web application. Any resemblance to existing internet services is coincidental.

This project uses [Spring MVC], [Spring Data JPA], [Spring Security], and [Apache Tiles].

Copyright © 2023-, Peng Minghua. Licensed under [Apache License, Version 2.0].

Prerequisites

This project requires a [Java Development Kit] v11 or newer and [Apache Maven] 3 to compile the source code.

Database Setup

This webapp requires a database, so setup one and add the following JNDI entry to your servlet container: jdbc/moikiitos.

Add your database settings like username & password to this file if using Tomcat: src/main/webapp/META-INF/context.xml, copy it under '$TOMCAT_HOME/conf/'.

The schema will be created when the application starts. Or you can import data.sql to your database, you can use pmh/password to login.

The app includes database drivers for [MySQL] 8 and uses that dialect by default.

Building

First, download the latest and greatest source code:

git clone [email protected]:pmh905001/moikiitos.git

Build and run the code with the following commands:

cd moikiitos
mvn clean install
mvn tomcat7:run

Then open your browser to this address: http://localhost:8080/moikiitos/

Editing

This project does not require an IDE, but is setup to be edited using an [Eclipse].

  1. Create a new workspace
  2. click File -> Open Projects from File System... -> Import Source
  3. For the root directory, select the moikiitos directory from the git repository you cloned locally.
  4. click Finish

Change Log

  1. Based & referenced to existed project https://github.com/d-rep/Microblog/
  2. Upgrade to java 11 and make it can run.
  3. Update context.xml to fix utf8 encoding character & time zone of MySQL.
  4. Re-factor code to remove useless log.
  5. Update UI layout and wording for all views.
  6. Optimized feed list view, e.g hide words if overflow.
  7. Support confirmation password and URL to redirect on register view.
  8. Support email account to register/login/query and displayed as one column by extends JdbcUserDetailsManager.
  9. Add following/followers views & displaying the number by the filter.

To Do List

  1. Make feed items can be displayed more text.
  2. Some unit tests failed due to java version or incompatibility package.
  3. Global exception handler.
  4. Upgrade to latest version of Spring & TOMCAT version to fix Fix jaxb-api-2.3.0.jar issue on start service
  5. Re-factor code to expose RESTful APIs to support other devices and separating front and back end.
  6. Use cache(redis/mq) to improve performance if necessary, e.g number of following/follower, feed list.

moikiitos's People

Contributors

pmh905001 avatar

Watchers

 avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.