Git Product home page Git Product logo

java-design-patterns-vuepress-web's Introduction

Java Design Patterns Website Netlify Status Join the chat at https://gitter.im/iluwatar/java-design-patterns-vuepress-web

Deploys by Netlify

This repository contains the source code of Java Design Patterns website, powered by Vuepress. The website mainly pulls content from these sources:

Running it locally is easy, just follow these steps:

  • Clone this repository
  • Install the dependencies pnpm install
  • Prepare the content pnpm run generate
  • Run the local development server pnpm run dev
  • Access the website http://localhost:8080/

java-design-patterns-vuepress-web's People

Contributors

aohanhongzhi avatar gitter-badger avatar iluwatar avatar luismateoh avatar ohbus avatar sudowanderer avatar youngledo avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

java-design-patterns-vuepress-web's Issues

Merged project ducumentation

Hey guys,

I was able to merge all README.md files into one big .pdf document, just to gather everything in one place and make reading easier, instead of jumping from folder to folder. It is here:

patterns.pdf

It is not yet formatted as it should be, but I am working to make it better. The final product will be one .pdf document and one .md document - something like a book of patterns.

@iluwatar suggested that the website could dynamically build this presentation out of all the patterns that are available. This sounds like a good idea. Let me first finish the initial job of creating merged README.md and then we can jump into this if you agree.

Netlify open source plan

To deploy the website I've been using the netlify.com starter plan. Currently, each change in the master branch triggers Netlify deployment to https://fervent-booth-169ea6.netlify.app/.

The service works great as long as there is only one developer in the team but requires actions when additional benches are needed. It can be solved by credit card or another better alternative is to apply for an open source license.

To qualify for the open source plan that allows an unlimited number of free developers they list some requirements and an application process here. In this issue let's try to fulfill those requirements and get us approved for the open source plan so we can collaborate easily.

Snippets-Bubblesort need to adjust boundaries.

 public static void bubbleSort(int[] arr) {
    var lastIndex = arr.length - 1;
    for(var j = 0; j < lastIndex; j++) {
      for(var i = 0; i < lastIndex - j; i++) {
        if(arr[i] > arr[i + 1]) {
          var tmp = arr[i];
          arr[i] = arr[i + 1];
          arr[i + 1] = tmp;
        }
      }
    }
  }

The outermost loop can be run at most n-1 times, so the changes are as follows

for(var j = 0; j < lastIndex - 1; j++) {
      for(var i = 0; i < lastIndex - j - 1; i++) {

Upgrade to Vuepress 2

Vuepress 1.x is becoming old and the new development is done on Vuepress 2. We should upgrade when possible.

Acceptance criteria

  • Website upgraded to Vuepress 2

Index page for the patterns

We need to have an index listing of patterns on the page /patterns. Nothing too fancy at this point, just something that allows easy browsing to each of the patterns.

Theme button

The theme button is having a strange behaviour when clicked.
It looks like it initial state is the oposite one that is beeing applied to the website, and then when you change it, it does not apply any theme changes because theme is already applied.

Gif bellow
button-state

sticky header

It would be easier for users to navigate if the header is sticky and transparent.
something like this----->

website.mp4

30-seconds-of-java/CycleSort bug.

bug: CycleSort
if (arr[i] < n && arr[i] != arr[correctpos])->if (arr[i] <= n && arr[i] != arr[correctpos])
eg. [5 4 2 1 3] , when i = 0, arr[i] < n is false.

Create website logo

We are currently using placeholder logos in the nav bar and the front page. It would be great to have proper graphic designs for these. See the attached screenshot:
image

Item missing from the breadcrumbs navigation

See the image. At least the root item is missing from the breadcrumbs navigation at the top. The same issue concerns probably all the patterns.

Image

Acceptance criteria

  • Breadcrumbs shows the full path

Pattern tags are not visible

On the website https://java-design-patterns.com the individual pattern pages show the category and reading time, but the tags are not displayed. This looks like a bug somewhere, since the tags are present in the pattern frontmatter yamls.

Acceptance criteria

  • The individual pattern pages display tags from the yaml frontmatter

Add category and tag clouds to the pattern catalog

At the moment, the pattern list page is a simple list of patterns. It would be nice to show all the categories and tags as well to make the browsing experience more delightful.

Acceptance criteria

  • The patterns page displays the available categories and tags

Dynamic pattern list

When a new pattern is added to the library, at the moment we need to edit the pattern index page. It would be nice to have a dynamic index page that collects the available patterns and creates a nice searchable list out of them.

Multi-language support

Vuepress.js default theme comes with great support for multilingual sites. In this issue let's configure the site so that it enables switching the language and browsing to pages produced in other languages.

Scheduled deployments

The deployment is being cancelled because netlify is detecting no content change in this repository.

The content is going to be changed more in the git repositories which it is building for generate the website.

There are few things that we need to make sure for this to perform well:

  • Enable scheduled build triggers.
  • Deactivate checking content change on this repository and continue deployment regardless.

Fix front page logo on zh localisation.

Currently the logo on the main screen of the zh language localisation is logo.svg, which doesn't load. It should be coffee.svg like it is on the English website.

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.