Skip to content

Commit

Permalink
add more words, add limit to random sentence
Browse files Browse the repository at this point in the history
  • Loading branch information
jaroslaw-weber committed May 29, 2024
1 parent 194190e commit 245cd1d
Show file tree
Hide file tree
Showing 5 changed files with 486 additions and 42 deletions.
46 changes: 23 additions & 23 deletions README.md
Original file line number Diff line number Diff line change
@@ -1,36 +1,36 @@
This is a [Next.js](https://nextjs.org/) project bootstrapped with [`create-next-app`](https://github.com/vercel/next.js/tree/canary/packages/create-next-app).
# 10k Sentence Journey

## Getting Started
Welcome to the 10k SentenceJourney! This tool is designed to help users learn Korean by reading through sentences in a structured manner. It uses a frequency-based approach to help learners progressively understand and memorize words in context.

First, run the development server:
## Get Started

```bash
npm run dev
# or
yarn dev
# or
pnpm dev
# or
bun dev
```
To get started, go to:
https://jaroslaw-weber.github.io/10k-sentence-journey/

Open [http://localhost:3000](http://localhost:3000) with your browser to see the result.
## How It Works

You can start editing the page by modifying `app/page.tsx`. The page auto-updates as you edit the file.
The application presents users with Korean sentences featuring a range of vocabulary. These sentences are selected based on frequency to ensure learners encounter common words more often, aiding in quicker and more effective language acquisition.

This project uses [`next/font`](https://nextjs.org/docs/basic-features/font-optimization) to automatically optimize and load Inter, a custom Google Font.
### Key Features

## Learn More
- **Progressive Learning:** Begin with simpler and more frequent words, gradually introducing more complex vocabulary.
- **Tracking Progress:** Users can mark words they have learned, which hides them from future sentences to focus on unlearned vocabulary.
- **Randomized Sentence Presentation:** Offers a varied learning experience with each use to enhance retention and engagement.

To learn more about Next.js, take a look at the following resources:
## Frequency List

- [Next.js Documentation](https://nextjs.org/docs) - learn about Next.js features and API.
- [Learn Next.js](https://nextjs.org/learn) - an interactive Next.js tutorial.
The vocabulary used in the sentences is derived from the following frequency list:
[Wiktionary Korean 5800](https://en.wiktionary.org/wiki/Wiktionary:Frequency_lists/Korean_5800)

You can check out [the Next.js GitHub repository](https://github.com/vercel/next.js/) - your feedback and contributions are welcome!

## Deploy on Vercel
## Contribute

The easiest way to deploy your Next.js app is to use the [Vercel Platform](https://vercel.com/new?utm_medium=default-template&filter=next.js&utm_source=create-next-app&utm_campaign=create-next-app-readme) from the creators of Next.js.
This project is open source and we actively welcome contributions from the community! Whether you want to fix bugs, propose features, or improve documentation, your help is invaluable.

Check out our [Next.js deployment documentation](https://nextjs.org/docs/deployment) for more details.
## License

This project is released under the MIT License. See the LICENSE file for more details.

## Contact

For questions, suggestions, or connections, please visit our [GitHub repository](https://github.com/jaroslaw-weber/10k-sentence-journey) and feel free to create an issue or submit a pull request.
67 changes: 55 additions & 12 deletions app/help/page.tsx
Original file line number Diff line number Diff line change
@@ -1,8 +1,14 @@
// pages/help.tsx
import Head from 'next/head';
import { NextPage } from 'next';
"use client";
import Head from "next/head";
import { NextPage } from "next";
import { getGenerateSentencePrompt } from "@/service/sentence/prompt";
import { useEffect } from "react";

const Help: NextPage = () => {
useEffect(() => {
getGenerateSentencePrompt().then((x) => console.log(x));
});
return (
<div className="container mx-auto px-4">
<Head>
Expand All @@ -12,7 +18,13 @@ const Help: NextPage = () => {

<main className="flex flex-col items-center justify-center min-h-screen py-2 text-center">
<h1 className="text-4xl font-bold text-primary">
Welcome to <a href="https://github.com/jaroslaw-weber/10k-sentence-journey" className="link link-hover">10k Sentence Journey!</a>
Welcome to{" "}
<a
href="https://github.com/jaroslaw-weber/10k-sentence-journey"
className="link link-hover"
>
10k Sentence Journey!
</a>
</h1>

<p className="mt-6 text-base">
Expand All @@ -22,36 +34,67 @@ const Help: NextPage = () => {
<div className="mt-8 text-left">
<h2 className="text-lg font-semibold">How it works:</h2>
<ul className="list-disc pl-5 text-lg">
<li>Progress through 10,000 Korean sentences to learn words in context.</li>
<li>Sentences use vocabulary that is selected randomly, with more frequent words showing up first.</li>
<li>This approach lets you gradually learn more difficult words.</li>
<li>As you learn words, click on the checkbox <i className="i-health-bookmark text-success"></i> next to them to track your progress and hide them.</li>
<li>
Progress through 10,000 Korean sentences to learn words in
context.
</li>
<li>
Sentences use vocabulary that is selected randomly, with more
frequent words showing up first.
</li>
<li>
This approach lets you gradually learn more difficult words.
</li>
<li>
As you learn words, click on the checkbox{" "}
<i className="i-health-bookmark text-success"></i> next to them to
track your progress and hide them.
</li>
</ul>
</div>

<div className="mt-4">
<a href="https://langible.com/articles/10000-sentence-method"
className="link link-primary">
<a
href="https://langible.com/articles/10000-sentence-method"
className="link link-primary"
>
Learn more about the 10,000 Sentence Method
</a>
</div>

<div className="mt-10">
<a
href="https://github.com/jaroslaw-weber/10k-sentence-journey"
className="btn btn-primary gap-2">
className="btn btn-primary gap-2"
>
<i className="i-brand-github"></i> Visit GitHub
</a>
</div>

<p className="mt-6 text-secondary">
This project is <strong>open source</strong>. You can contribute by visiting the <a href="https://github.com/jaroslaw-weber/10k-sentence-journey" className="link link-accent">GitHub repository</a>.
This project is <strong>open source</strong>. You can contribute by
visiting the{" "}
<a
href="https://github.com/jaroslaw-weber/10k-sentence-journey"
className="link link-accent"
>
GitHub repository
</a>
.
</p>
</main>

<footer className="p-4 footer bg-base-200 text-base-content footer-center">
<div>
<p>Powered by <a href="https://github.com/jaroslaw-weber/10k-sentence-journey" className="link link-hover">10k Sentence Journey</a></p>
<p>
Powered by{" "}
<a
href="https://github.com/jaroslaw-weber/10k-sentence-journey"
className="link link-hover"
>
10k Sentence Journey
</a>
</p>
</div>
</footer>
</div>
Expand Down
3 changes: 1 addition & 2 deletions package.json
Original file line number Diff line number Diff line change
Expand Up @@ -6,8 +6,7 @@
"dev": "next dev",
"build": "next build",
"start": "next start",
"lint": "next lint",
"new-sentences": "ts-node --project tsconfig.scripts.json scripts/newSentences.ts"
"lint": "next lint"
},
"dependencies": {
"@fortawesome/fontawesome-svg-core": "^6.5.2",
Expand Down
Loading

0 comments on commit 245cd1d

Please sign in to comment.