UpskillEnglish is a web application designed to enhance English proficiency through two focused sections: Practice Zone and Assessment Zone. Whether you're looking to hone your skills or evaluate your progress, UpskillEnglish offers a comprehensive solution for advanced English learners.
Frontend Repository: https://github.com/nadimnesar/upskillenglish-frontend
Swagger URL: http://localhost:8080/swagger-ui/index.html#/
- Clone backend repository:
git clone https://github.com/nadimnesar/upskillenglish.git
- To build the Docker image, navigate to the directory containing your Dockerfile and build docker image:
cd upskillenglish
docker build -t upskillenglish .
- Then, to run the container, use (update env's with your configs):
docker run -d --network host --name upskillenglish \
-e GEMINI_KEY=your_gemini_api_key \
-e HUGGINGFACE_KEY=your_huggingface_key \
-e POSTGRES_DBNAME=your_postgres_db_name \
-e POSTGRES_USERNAME=your_postgres_db_username \
-e POSTGRES_PASSWORD=your_postgres_db_password \
-e BASE64_CODE=your_jwt_secret_key \
upskillenglish
- Access the application: Open postman and hit to http://localhost:8080 (Checkout swagger for API documentation).
- To stop the container:
docker stop upskillenglish
- Clone frontend repository:
git clone https://github.com/nadimnesar/upskillenglish-frontend.git
- To build the Docker image, navigate to the directory containing your Dockerfile and build docker image:
cd upskillenglish-frontend
docker build -t upskillenglish-frontend .
- Then, to run the container:
docker run -d --network host --name upskillenglish-frontend upskillenglish-frontend
- Access the application: Open a web browser and navigate to http://localhost:4200
- To stop the container:
docker stop upskillenglish-frontend
- Clone backend repository:
git clone https://github.com/nadimnesar/upskillenglish.git
- Update
/src/main/resources/application.properties
file with your environment-specific configurations and install Gradle if not already installed. - Navigate to the backend directory and build the Spring Boot application:
cd upskillenglish
./gradlew build -x test
java -jar build/libs/upskillenglish-0.0.1-SNAPSHOT.jar
- Clone frontend repository:
git clone https://github.com/nadimnesar/upskillenglish-frontend.git
- Install Node.js, npm, and Angular CLI if not already installed.
- Open a new terminal, navigate to the frontend directory, and install dependencies:
cd upskillenglish-frontend
npm install
ng serve
- Access the frontend at http://localhost:4200 and ensure the backend is running on http://localhost:8080.
The Practice Zone is designed to help users improve their English through various interactive tools. Key features include:
- Passage Learning Lab: Users can access new academic-level passages, with translation options to aid comprehension.
- Question Practicing Hub: Generate four types of reading-related questions by inputting a passage, helping users engage with diverse question formats.
- Improve Writing: Submit written responses on specific topics and receive detailed corrections and feedback to refine writing skills.
- Improve Listening: Play audio clips to practice listening, with text and translation support to reinforce understanding.
The Assessment Zone allows users to test their English proficiency through a structured and rigorous evaluation process. This section provides instant feedback and detailed scoring:
- Quick Practice: Focused on testing core language skills such as grammar, sentence completion, synonyms, antonyms, word usage, vocabulary, coherence, cohesion, and idioms. Immediate correction is provided after submission.
- Reading Test: A two-part reading test designed to assess key reading abilities.
- Part 1: Evaluates fact-checking and text cohesion.
- Part 2: Focuses on paragraph matching and understanding.
- Writing Test: Two sections that assess written communication skills.
- Part 1: Graph analysis and interpretation.
- Part 2: Essay writing on a given topic.
- Listening Test: Users listen to an audio clip and answer various question types to assess their listening skills.
Each of the assessment features provides a score upon test completion, and a Leaderboard feature displays user rankings based on their performance.
- Choose between the Practice Zone to improve your skills or the Assessment Zone to evaluate your progress.
- Engage with the content, practice regularly, and track your scores on the leaderboard.
- Benefit from instant feedback, detailed insights, and personalized corrections.
UpskillEnglish is your ultimate companion for mastering advanced English and preparing for exams like IELTS and TOEFL.