Git Product home page Git Product logo

website-v2's People

Contributors

antoninhuaut avatar crookse avatar dependabot[bot] avatar ebebbington avatar guergeiro avatar mmmikem avatar mwcz avatar netopwibby avatar pfui-bah-kiste avatar reviewher avatar routmoute avatar sant123 avatar snocold avatar tedt10e avatar

Stargazers

 avatar  avatar

Watchers

 avatar  avatar  avatar

website-v2's Issues

Migrate Drash v1.x docs to Next.js

Summary

What: Currently, Drash v1.x docs are still in a Vue webpack bundle. Migrate it to the Next.js docs. That means make all the .md files needed to replicate the Drash v1.x docs.

Why: The Vue bundles can't serve as a backup for documentation. The reason why we moved to .md files was so that if our hosting (whichever provider we use) goes down (our DigitalOcean servers have gone down for maintenance a couple of times), users can reference the .md files in this repository.

Acceptance Criteria

Below is a list of tasks that must be completed before this issue can be closed.

  • Add all .md files needed in /docs/drash/v1.x (these files need to follow the convention set in /docs/drash/v2.x and /docs/sinco/v2.x... you'll notice a pattern of how docs are written)
  • Remove /public/drash
  • Remove /public/assets/drash-v1.x
  • Remove /public/assets/bundles/drash-v1.x.js

Add dark mode

Summary

What:

Sites have dark and light mode so that users can switch between themes.

Why:

This is cool and easy on the eyes when needed.

Acceptance Criteria

Below is a list of tasks that must be completed before this issue can be closed.

  • Add toggle to LayoutTopbar
  • The transition from dark to light/light to dark should be about .25s or a duration that isn't to fast that it hurts the eyes

investigation: Search using Moogle?

Summary

What:

Should we add search using Moogle?

Why:

Would be nice to search documentation and Moogle is quick and can be used in this repo.

Example Pseudo Code (for implementation)

import { Moogle } from "https://deno.land/x/[email protected]/mod.ts";
const m = new Moogle();

m.addItem(
  ["error", "error handling", "blah blah blah"],
  {
    page_title: "Error Handling",
    url: "https://drash.land/drash/v2.x/tutorials/servers/error-handling",
    excerpt: "Blah blah error handling",
  }
);

m.search("error handling"); // returns the page title, url, and excerpt and we display it. when users click on it, it goes to the URL

feat: back to top button

Summary

What:

The v1 website had a back to top button appear when you scrolled down. We should introduce this again.

Why:

It sucks to scroll up.

Docs for Sinco 4.x

Summary

What:

Documentation for Sinco 4.x

Why:

So that new stuff in Sinco 4.x is documented

Migrate Sinco v1.x docs to Next.js

Summary

What: Currently, Sinco v1.x docs are still in a Vue webpack bundle. Migrate it to the Next.js docs. That means make all the .md files needed to replicate the Sinco v1.x docs.

Why: The Vue bundles can't serve as a backup for documentation. The reason why we moved to .md files was so that if our hosting (whichever provider we use) goes down (our DigitalOcean servers have gone down for maintenance a couple of times), users can reference the .md files in this repository.

Acceptance Criteria

Below is a list of tasks that must be completed before this issue can be closed.

  • Add all .md files needed in /docs/sinco/v1.x (these files need to follow the convention set in /docs/drash/v2.x and /docs/sinco/v2.x... you'll notice a pattern of how docs are written)
  • Remove /public/sinco
  • Remove /public/assets/sinco-v1.x
  • Remove /public/assets/bundles/sinco-v1.x.js

Issue on /drash/v2.x/tutorials/servers/configuration page

I think it should use the code variable set at the beginning of the https://drash.land/drash/v2.x/tutorials/servers/configuration#error-handler-new-args-any-ierrorhandler section.

    // ... and so on ...

    // Return the response for Drash to send to the client
    return response.json({
      message,
    });

    // The above will result in the following response ...
    //
    //   {
    //     message: "Whatever the message variable was set to.",
    //   }
    //
    // ... and will have the correct status code in the Status Line of the
    // response

Like this:

response.code = code

drash: feature introduction dates

We need to state when a feature was introduced. For example:

This feature was introduced in v2.1.0. Please make sure you are using v2.1.0 (or higher) before proceeding with this tutorial.

dmm: Migrate dmm v1.x docs to Next.js

Summary

What: Currently, dmm v1.x docs are still in a Vue webpack bundle. Migrate it to the Next.js docs. That means make all the .md files needed to replicate the dmm v1.x docs.

Why: The Vue bundles can't serve as a backup for documentation. The reason why we moved to .md files was so that if our hosting (whichever provider we use) goes down (our DigitalOcean servers have gone down for maintenance a couple of times), users can reference the .md files in this repository.

Acceptance Criteria

Below is a list of tasks that must be completed before this issue can be closed.

  • Add all .md files needed in /docs/dmm/v1.x (these files need to follow the convention set in /docs/drash/v2.x and /docs/sinco/v2.x... you'll notice a pattern of how docs are written)
  • Remove /public/dmm
  • Remove /public/assets/dmm-v1.x
  • Remove /public/assets/bundles/dmm-v1.x.js

drash: add white background to lifecycle diagram

Summary

What:

Update lifecycle diagram to have a white background.

Why:

When you switch to dark mode, the lifecycle diagram is kind of hard to read since it has black text showing on the dark mode background.

Clean up code

Summary

What: Code was done fairly quickly to roll out Drash v2.x docs. It hasn't been linted, hasn't been formatted, and hasn't been checked against best practices. The code needs to formatted, linted, and checked against best practices in React AND Next.js.

Also, let's have a GitHub workflow that lints and does a formatting check.

Why: Let's not have crappy code and make it easier to follow a standard.

Acceptance Criteria

Below is a list of tasks that must be completed before this issue can be closed.

  • Code is linted
  • Code is formatted
  • Code follows best practices in React and Next.js
  • GitHub workflow is added to check linting and formatting

Migrate Line v0.x docs to Next.js

Summary

What: Currently, Line v0.x docs are still in a Vue webpack bundle. Migrate it to the Next.js docs. That means make all the .md files needed to replicate the Line v0.x docs.

Why: The Vue bundles can't serve as a backup for documentation. The reason why we moved to .md files was so that if our hosting (whichever provider we use) goes down (our DigitalOcean servers have gone down for maintenance a couple of times), users can reference the .md files in this repository.

Acceptance Criteria

Below is a list of tasks that must be completed before this issue can be closed.

  • Add all .md files needed in /docs/line/v0.x (these files need to follow the convention set in /docs/drash/v2.x and /docs/sinco/v2.x... you'll notice a pattern of how docs are written)
  • Remove /public/line
  • Remove /public/assets/line-v0.x
  • Remove /public/assets/bundles/line-v0.x.js

Remove references to versions and use <version> instead

Summary

What:

In the docs we say export * as Drash from "https:// ... v2.0.0";. We should replace the version with <version> and provide a link to our releases page.

Why:

This removes the need for us to update our docs every time we release.

Markdown issues on dmm

Summary

A clear and concise summary of the bug.

Steps To Reproduce The Bug

  1. These ...
  2. Steps ...
  3. Are ...
  4. Required ...

Expected Behavior

A clear and concise description of what you expected to happen.

Suggested Solution(s)

A list of suggested solutions to try/implement.

Screenshots

If applicable, add screenshots to help explain your problem.

Additional Context

Add any other context that will help the project maintainers investigate this issue.

Migrate Wocket v0.x docs to Next.js

Summary

What: Currently, Wocket v0.x docs are still in a Vue webpack bundle. Migrate it to the Next.js docs. That means make all the .md files needed to replicate the Wocket v0.x docs.

Why: The Vue bundles can't serve as a backup for documentation. The reason why we moved to .md files was so that if our hosting (whichever provider we use) goes down (our DigitalOcean servers have gone down for maintenance a couple of times), users can reference the .md files in this repository.

Acceptance Criteria

Below is a list of tasks that must be completed before this issue can be closed.

  • Add all .md files needed in /docs/wocket/v0.x (these files need to follow the convention set in /docs/drash/v2.x and /docs/sinco/v2.x... you'll notice a pattern of how docs are written)
  • Remove /public/wocket
  • Remove /public/assets/wocket-v0.x
  • Remove /public/assets/bundles/wocket-v0.x.js

wocket: reconnection docs

Summary

What:

Add reconnection docs for the client managing the reconnection

Why:

Prevent core code pollution. Add knowledge.

See below chat:

914080E9-9E3C-40E6-AA84-33A98D1347C3

List only related releases

Summary

What:

When we tell users about where to find our releases for a specific version, we want to ensure that we're only showing them the version that applies to the documentation they're looking at. For example, if they're on Drash v2.x docs, then we should provide a link to the GitHub releases page that only shows v2 releases.

See here: #15 (comment)

Why:

It's confusing to show all versions for documentation pages on a specific major version

feat: auto-inject step and code block for using a deps.ts file

Summary

What:

The "Adding {module} as a dependency" page kind of works. It would be better if we could show that content on each tutorial.

Why:

Tutorials can be ambiguous because we reference a deps.ts file that isn't mentioned in tutorials. We assume the reader has read the "Add {module} as a dependency page" which I think can be improved. We have PRs open labeled "DO NOT CLOSE" that pretty much go over this issue. We should improve the experience here.

Acceptance Criteria

Below is a list of tasks that must be completed before this issue can be closed.

  • Content is auto-injected into tutorials
  • Write unit tests

Example Pseudo Code (for implementation)

## Steps

1. {{ replace_deps_drash }}

... rest of content

The above, when rendered through react-markdown, would replace the variable {{ replace_deps_drash }} with the step to create a deps.ts file and a code block showing how we export from it. Like below:

1. Add your deps.ts file.

  {code block here}

We may be able to leverage the OrderedList component to do this for us by creating our own and passing it to react-markdown

Add Edit This Page button/link

Summary

What:

Each markdown page should have an Edit This Page button or link. The button/link should open the GitHub page in a new tab to edit the markdown file associated with the page to be edited.

Why:

Makes it easy for us and users to contribute to a page that needs edits.

Iterate over code base to improve it if possible

Summary

What: Code was done fairly quickly to roll out Drash v2.x docs. It hasn't been linted, hasn't been formatted, and hasn't been checked against best practices. The code needs to formatted, linted, and checked against best practices in React AND Next.js.

Also, let's have a GitHub workflow that lints and does a formatting check.

Why: Let's not have crappy code and make it easier to follow a standard.

Acceptance Criteria

Below is a list of tasks that must be completed before this issue can be closed.

  • Code is linted
  • Code is formatted
  • Code follows best practices in React and Next.js
  • GitHub workflow is added to check linting and formatting

[Drash] Roadmaps

  • Add server-sent events
  • Checkmark Drash + Deno Deploy tutorial
  • Add Dev Tools plugin
  • Add GraphQL service
  • Add rate limiter service
  • Add Visa service
  • Add ResponseTime service
  • Add compressor service
  • Add Session service

Issue on /drash/v2.x/tutorials/responses/setting-the-body

The example uses a const that is not defined

public GET(request: Drash.Request, response: Drash.Response): void {
  const typescript = Deno.readFileSync("/path/to/my/typescript/file.ts");
  return response.send<string>("application/typescript", body);
}

Drash: Add new section for recommended services to use

eg

Here are the list of recommend services we believe would be great for you to use

  1. Paladin: why
  2. Response time: why

Here is an example of how your server file may look

import { all da services }

const paladin = new paladin()

Sinco v3: Minor UI fixes

Back button doesnt work on module pages

Summary

After clicking a module and being redirected to the docs pages, clicking the built in back button does nothing

Steps To Reproduce The Bug

  1. go to website
  2. click drash card
  3. wait for docs pages to load
  4. click back button

Expected Behavior

back button should go back

Sidebar overlaps text

Sidebar overlaps text when window width is decreased. Sidebsr should slide out of view and show the sidebar toggle button when the content is nearly flushed with the right side of the sidebar

[Mobile only] - When scrolling the side bar, it closes randomly

Summary

Scrolling the side bar on mobile closes the side bar randomly

Steps To Reproduce The Bug

  1. Open site on mobile
  2. Got to a module page
  3. Open side bar
  4. Scroll up and down (the bug will make the side bar close randomly)

Expected Behavior

Side bar should be scrollable until it is closed manually by using the X button

[Drash] Add tree-shaking information page

Summary

What:

There are many ways to import Drash:

import * as Drash from ".../drash/mod.ts";
import { Something } from ".../drash/mod.ts";
import Something from ".../drash/src/http/something.ts";

Each import method will have a different dependency tree. We should inform users about the different ways to import Drash so they can be informed on the size of their dependency tree.

Why:

Importing a dependency and not using it is a waste of space. Informing users how they can keep their applications small would be a nice addition to the docs.

feat: tabbed code blocks

Summary

What:

Modules that support more than Deno should have example code blocks with tabs. Tabs would be clickable and would show Deno, Node, Browser, etc. example code.

Why:

Better dev UX. Removes ambiguity and assumptions.

Acceptance Criteria

Below is a list of tasks that must be completed before this issue can be closed.

  • Write documentation
  • Write unit tests
  • Write integration tests

Add Favicon

Summary

What:

Add the favicon

Why:

The favicon doesn't exist, so drash.land shows Next.js' favicon

Homepage flashes GitHub icon

Summary

When going to the homepage for the first time, you'll see the GitHub icon for a split second fill up the size of the screen.

Steps To Reproduce The Bug

  1. Clear your cache
  2. Go the https://drash.land
  3. You will notice the GitHub icon

Expected Behavior

As the page is loading (that is, being mounted by React) a loading screen should be displayed instead.

Suggested Solution(s)

Add a useEffect() hook to determine when the page is fully loaded and then show the page.

If the page has not been loaded then make the component return null or a loading screen. I opt for the loading screen.

For the GitHub icon, set a max height on it so it doesn't enlarge to the size of the screen.

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.