Page MenuHomePhabricator

QuickStatements 3.0 public documentation - Task
Closed, ResolvedPublic

Description

IMPORTANT: Make sure to read the Outreachy participant instructions and communication guidelines thoroughly before commenting on this task. This space is for project-specific questions, so avoid asking questions about getting started, setting up Gerrit, etc. When in doubt, ask your question on Zulip first!

This is the first task for T376128: Quickstatements 3.0 public documentation.

Task

  1. Fork the project https://github.com/WikiMovimentoBrasil/qts3-wmb-test
  2. Clone the source code in your computer
  3. Edit etc/env to setup your environment variables
  4. Follow the instructions provided in the README.md file to build the system. You will need to have Make and Docker available, to be executed in a terminal.
  5. Create a SECRET KEY using the instructions provided in the README.md
  6. Set SECRET KEY from the previous step the value of DJANGO_SECRET_KEY in your env file
  7. Run make build to build the container
  8. Run make shell to enter the development shell
    1. Run python3 src/manage.py migrate to populate the database
      • If you're having troubles with file/folder/database permissions, run sudo chmod 777 src/ to allow any user to read, write and enter the folder, and then try again.
  9. Exit the shell and run make run to start the system
    • Note: the source code does not have its full features. Last batches, login, search batch by id are disabled so that you can focus on the task specific details.
  10. Create a folder named outreachy inside you project folder
  11. Take a screenshot from http://localhost:8765 , named screenshot1.jpg and save into your outreachy folder
  12. Change the CSS from the home page, changing all buttons from green to blue
  13. Take a screenshot from http://localhost:8765 named screenshot2.jpg and save into your outreachy folder.
  14. Inside the outreachy folder, create a Markdown file called qts-index.md and write a documentation explaining all the features available in the home page.
  15. Register your activity in the Outreachy platform with the link to your repository. Do not share your repository here.

We will provide some feedback in the beginning of the week of the 21st for all those that submit before the 18th of October, so you'll have a chance of fixing your answers before the final application deadline (Oct. 29, 2024 at 4pm UTC)

Event Timeline

There are a very large number of changes, so older changes are hidden. Show Older Changes

Hello everyone, I am an Outreachy applicant and am happy to contribute to this project.

Thank you for having me.

Hello mentors @Ederporto @ACorrea-WMB and @MGalves_WMB,
Hi everyone, I am an outreachy applicant for the December 2024 round and I am excited to contribute to this project. Hoping to learn a great deal from our mentors and also from everyone here present.

Dear Mentors @MGalves_WMB @Ederporto @ACorrea-WMB,

I'm writing to report a few issues I've encountered while working on the Quickstatements 3.0 public documentation and to indicate my availability to work on them.

1. Login button and "Last batches" button:
Both buttons appear to be dead links on the homepage.
I've checked the view functions on the app(web) and found that they are absent for both links.
I've also checked the URL patterns and found they aren't mapped to any views.

2. Database Write Error:
When attempting to access the admin interface (http://localhost:8765/admin/login/next=/admin/), I receive the following error:

Screenshot 2024-10-06 233835.png (1×1 px, 233 KB)

This error suggests that the database is configured in read-only mode, preventing write operations.

Proposed Solutions:

  1. Login and "Last batches" Buttons: Create view functions for these buttons, map them to the appropriate URLs in urls.py and also create corresponding templates for each
  1. Database Write Error: Verify the database configuration and ensure it's not set to read-only mode. If necessary, adjust the database permissions or Django model configuration to allow write operations.

Again, I'm available to work on these issues and would appreciate your guidance and feedback.

Dear Mentors @MGalves_WMB @Ederporto @ACorrea-WMB,

I'm writing to report a few issues I've encountered while working on the Quickstatements 3.0 public documentation and to indicate my availability to work on them.

1. Login button and "Last batches" button:
Both buttons appear to be dead links on the homepage.
I've checked the view functions on the app(web) and found that they are absent for both links.
I've also checked the URL patterns and found they aren't mapped to any views.

2. Database Write Error:
When attempting to access the admin interface (http://localhost:8765/admin/login/next=/admin/), I receive the following error:

Screenshot 2024-10-06 233835.png (1×1 px, 233 KB)

This error suggests that the database is configured in read-only mode, preventing write operations.

Proposed Solutions:

  1. Login and "Last batches" Buttons: Create view functions for these buttons, map them to the appropriate URLs in urls.py and also create corresponding templates for each
  1. Database Write Error: Verify the database configuration and ensure it's not set to read-only mode. If necessary, adjust the database permissions or Django model configuration to allow write operations.

**Again, I'm available to work on these issues and would appreciate your guidance and feedback.

hello,
Thats great you are able to make findings.
Are you facing specific errors related to the task list??
I will be happy to help

Dear Mentors @MGalves_WMB @Ederporto @ACorrea-WMB,

I'm writing to report a few issues I've encountered while working on the Quickstatements 3.0 public documentation and to indicate my availability to work on them.

1. Login button and "Last batches" button:
Both buttons appear to be dead links on the homepage.
I've checked the view functions on the app(web) and found that they are absent for both links.
I've also checked the URL patterns and found they aren't mapped to any views.

2. Database Write Error:
When attempting to access the admin interface (http://localhost:8765/admin/login/next=/admin/), I receive the following error:

Screenshot 2024-10-06 233835.png (1×1 px, 233 KB)

This error suggests that the database is configured in read-only mode, preventing write operations.

Proposed Solutions:

  1. Login and "Last batches" Buttons: Create view functions for these buttons, map them to the appropriate URLs in urls.py and also create corresponding templates for each
  1. Database Write Error: Verify the database configuration and ensure it's not set to read-only mode. If necessary, adjust the database permissions or Django model configuration to allow write operations.

**Again, I'm available to work on these issues and would appreciate your guidance and feedback.

hello,
Thats great you are able to make findings.
Are you facing specific errors related to the task list??
I will be happy to help

Thank you so much for your willingness to assist. The error I get is when I try to 'login from http://localhost:8765/admin/' which I presented in my screenshot above. Again trying to use the login button leads to a dead link(the same thing happens when I try to use the 'Last batches button') which made me to start seeing the need to implement User registration and Login/Logout functionalities since my thorough examination of the source codes show these core functionalities to be absent. I'm really not sure if I have the permission to start working on any of the features I listed above. Thanks again for offering to help, I will appreciate your guidance.

Dear Mentors @MGalves_WMB @Ederporto @ACorrea-WMB,

I'm writing to report a few issues I've encountered while working on the Quickstatements 3.0 public documentation and to indicate my availability to work on them.

1. Login button and "Last batches" button:
Both buttons appear to be dead links on the homepage.
I've checked the view functions on the app(web) and found that they are absent for both links.
I've also checked the URL patterns and found they aren't mapped to any views.

2. Database Write Error:
When attempting to access the admin interface (http://localhost:8765/admin/login/next=/admin/), I receive the following error:

Screenshot 2024-10-06 233835.png (1×1 px, 233 KB)

This error suggests that the database is configured in read-only mode, preventing write operations.

Proposed Solutions:

  1. Login and "Last batches" Buttons: Create view functions for these buttons, map them to the appropriate URLs in urls.py and also create corresponding templates for each
  1. Database Write Error: Verify the database configuration and ensure it's not set to read-only mode. If necessary, adjust the database permissions or Django model configuration to allow write operations.

**Again, I'm available to work on these issues and would appreciate your guidance and feedback.

hello,
Thats great you are able to make findings.
Are you facing specific errors related to the task list??
I will be happy to help

Thank you so much for your willingness to assist. The error I get is when I try to 'login from http://localhost:8765/admin/' which I presented in my screenshot above. Again trying to use the login button leads to a dead link(the same thing happens when I try to use the 'Last batches button') which made me to start seeing the need to implement User registration and Login/Logout functionalities since my thorough examination of the source codes show these core functionalities to be absent. I'm really not sure if I have the permission to start working on any of the features I listed above. Thanks again for offering to help, I will appreciate your guidance.

Are you able to setup django admin/superuser successfuly : python manage.py createsuperuser

And are the issues you are facing now blocking you from completing the microtask in anyway?

Dear Mentors @MGalves_WMB @Ederporto @ACorrea-WMB,

I'm writing to report a few issues I've encountered while working on the Quickstatements 3.0 public documentation and to indicate my availability to work on them.

1. Login button and "Last batches" button:
Both buttons appear to be dead links on the homepage.
I've checked the view functions on the app(web) and found that they are absent for both links.
I've also checked the URL patterns and found they aren't mapped to any views.

2. Database Write Error:
When attempting to access the admin interface (http://localhost:8765/admin/login/next=/admin/), I receive the following error:

Screenshot 2024-10-06 233835.png (1×1 px, 233 KB)

This error suggests that the database is configured in read-only mode, preventing write operations.

Proposed Solutions:

  1. Login and "Last batches" Buttons: Create view functions for these buttons, map them to the appropriate URLs in urls.py and also create corresponding templates for each
  1. Database Write Error: Verify the database configuration and ensure it's not set to read-only mode. If necessary, adjust the database permissions or Django model configuration to allow write operations.

**Again, I'm available to work on these issues and would appreciate your guidance and feedback.

hello,
Thats great you are able to make findings.
Are you facing specific errors related to the task list??
I will be happy to help

Thank you so much for your willingness to assist. The error I get is when I try to 'login from http://localhost:8765/admin/' which I presented in my screenshot above. Again trying to use the login button leads to a dead link(the same thing happens when I try to use the 'Last batches button') which made me to start seeing the need to implement User registration and Login/Logout functionalities since my thorough examination of the source codes show these core functionalities to be absent. I'm really not sure if I have the permission to start working on any of the features I listed above. Thanks again for offering to help, I will appreciate your guidance.

Are you able to setup django admin/superuser successfuly : python manage.py createsuperuser

And are the issues you are facing now blocking you from completing the microtask in anyway?

Yeah, I created that successfully.

first I cd into src/
ran 'python manage.py migrate' (which completed successfully)
finally ran 'python manage.py createsuperuser' (this too completed successfully)
after that trying to log in returned the exception I pointed out in the the screenshot.

Dear Mentors @MGalves_WMB @Ederporto @ACorrea-WMB,

I'm writing to report a few issues I've encountered while working on the Quickstatements 3.0 public documentation and to indicate my availability to work on them.

1. Login button and "Last batches" button:
Both buttons appear to be dead links on the homepage.
I've checked the view functions on the app(web) and found that they are absent for both links.
I've also checked the URL patterns and found they aren't mapped to any views.

2. Database Write Error:
When attempting to access the admin interface (http://localhost:8765/admin/login/next=/admin/), I receive the following error:

Screenshot 2024-10-06 233835.png (1×1 px, 233 KB)

This error suggests that the database is configured in read-only mode, preventing write operations.

Proposed Solutions:

  1. Login and "Last batches" Buttons: Create view functions for these buttons, map them to the appropriate URLs in urls.py and also create corresponding templates for each
  1. Database Write Error: Verify the database configuration and ensure it's not set to read-only mode. If necessary, adjust the database permissions or Django model configuration to allow write operations.

**Again, I'm available to work on these issues and would appreciate your guidance and feedback.

hello,
Thats great you are able to make findings.
Are you facing specific errors related to the task list??
I will be happy to help

Thank you so much for your willingness to assist. The error I get is when I try to 'login from http://localhost:8765/admin/' which I presented in my screenshot above. Again trying to use the login button leads to a dead link(the same thing happens when I try to use the 'Last batches button') which made me to start seeing the need to implement User registration and Login/Logout functionalities since my thorough examination of the source codes show these core functionalities to be absent. I'm really not sure if I have the permission to start working on any of the features I listed above. Thanks again for offering to help, I will appreciate your guidance.

Are you able to setup django admin/superuser successfuly : python manage.py createsuperuser

And are the issues you are facing now blocking you from completing the microtask in anyway?

Thats starnge, if the db migrations were successful and you created a super user, and the nginx server is running i expect something like;

image.png (1×2 px, 65 KB)

Please strip unneeded full-quotes to keep tasks readable. Only quote what you actually refer to. Thanks.

Ooh sorry, I am not sure how to strip that sorry.
Not so used to this communication platform

Hello everyone. If you are having trouble with permissions, run sudo chmod 777 src/ to allow any user to modify the src directory, which will allow the container user to create and modify a database there. If you already created a database file and is having troubles with it, you can do the same thing with it: sudo chmod 666 src/db.sqlite3

6 means read + write, 7 means read + write + execute (in order to enter a directory, you need execute permissions). The first number is for the owner, the second number is for the group, and the third number is for everyone else.

Hello, Naomi here, I am an Outreachy applicant and I am keenly interested to intern at Wikimedia. I am a software engineer with specialization in backend web development using Python (Flask and Django) and i have experience working with both Git and GitHub.

Hello, I'm Eze, I am an outreachy applicant for the December 2024 cohort and I am interested in contributing to this project. I know the basics of Django and I'm competent with Git and Github. I look forward to learning as I try to contribute to this.

Hello everyone. If you are having trouble with permissions, run sudo chmod 777 src/ to allow any user to modify the src directory, which will allow the container user to create and modify a database there. If you already created a database file and is having troubles with it, you can do the same thing with it: sudo chmod 666 src/db.sqlite3

6 means read + write, 7 means read + write + execute (in order to enter a directory, you need execute permissions). The first number is for the owner, the second number is for the group, and the third number is for everyone else.

This solves it for me! With these few commands and the update in the task description the app is up and running on my local machine and all the permission issues I had earlier are gone. Thank you so much sir.

Dear Mentors,

I am Agnes, an Outreachy applicant, and a Python (Django) web developer. I have gone through the task's instruction and have started working on them. I am learning concepts I haven't used before and this challenge is making my contribution experience worth it. I am a grateful for the growth in my skill set so far and I look forward to learning more.

Thank you

Hi, I have been working on this and i ran into these issues. Not sure if its just with me or the expected behaviour.

The "Login" and "Last Batches" buttons on the homepage are currently dead links and do not lead to any actionable pages.

Pressing the search buttons for batch ID or username does not return any results.

Would appreciate any input.

Hi, I have been working on this and i ran into these issues. Not sure if its just with me or the expected behaviour.

The "Login" and "Last Batches" buttons on the homepage are currently dead links and do not lead to any actionable pages.

Pressing the search buttons for batch ID or username does not return any results.

Would appreciate any input.

You're not out of order, the repo doesn't have the complete source code but what you have is enough to complete the task at hand. I too had that challenge and was later clarified that things are that way by design. Here's the link to a post by one of our mentors
https://wikimedia.zulipchat.com/#narrow/stream/100747-general/topic/QuickStatements.203.2E0.20public.20documentation.20Issues/near/475349190
you can hit me back if you have any more challenges so we put heads together and trash that.

Hello, My name is Nyerhovwo, I'm an outreachy applicant for the December 2024 cohort and I'm interested in this. Let's get to work and achieve good things

Hello, My name is Nyerhovwo, I'm an outreachy applicant for the December 2024 cohort and I'm interested in this. Let's get to work and achieve good things

Hello @ONyerhovwo, welcome on board

Hi, I have been working on this and i ran into these issues. Not sure if its just with me or the expected behaviour.

The "Login" and "Last Batches" buttons on the homepage are currently dead links and do not lead to any actionable pages.

Pressing the search buttons for batch ID or username does not return any results.

Would appreciate any input.

Hi @Hibaaman ,Thanks for bringing this up! As @Okay-michael rightly said, the issue you're encountering with the "Login" and "Last Batches" buttons not working and the search functionality not returning results don't seem to be specific to just your setup. These areas are currently not affecting the task we're working on for now.

PLEASE HELP, I am stuck at bullet point 8 because my src file refuses to be copied into my docker/shell environment. Both cmd.sh and requirements.txt are copied but not src and I have tried everything I know, including tweaking the dockerfile to enable the file to be copied, does anyone know how i can fix this please?

PLEASE HELP, I am stuck at bullet point 8 because my src file refuses to be copied into my docker/shell environment. Both cmd.sh and requirements.txt are copied but not src and I have tried everything I know, including tweaking the dockerfile to enable the file to be copied, does anyone know how i can fix this please?

Hello @Nayohmeee, could you please provide a screenshot of the error you are encountering? This will help me understand the issue better.

Additionally, did you run the command sudo chmod 777 src/? This command ensures that the src directory has the necessary permissions for reading, writing, and executing.

Hello mentors @MGalves_WMB @Ederporto @ACorrea-WMB I would like to clarify whether we are required to create pull requests for our contributions, or if we simply record our contributions as they are.
Thank you for your guidance

PLEASE HELP, I am stuck at bullet point 8 because my src file refuses to be copied into my docker/shell environment. Both cmd.sh and requirements.txt are copied but not src and I have tried everything I know, including tweaking the dockerfile to enable the file to be copied, does anyone know how i can fix this please?

Hi Nayohmeee, sorry about the issue you're having getting things to work fine. I suspect the problem is with the way you're managing your development environment, so I'm going to recommend you install Windows Subsystem for Linux 2 (WSL2) and run Docker using it as the backend if you’re running on Windows 10 and above. This way you may not need to manually copy any file or directory into the docker/shell environment as docker directly uses it for it's backend. WSL2 provides a more Linux-like environment with better performance and compatibility, making it ideal for developing with tools like make.
Here's how to get started,

  • Install WSL2 from Microsoft store.
  • Configure Docker to use WSL2 by following the instructions on this link https://docs.docker.com/desktop/install/windows-install/
  • Clone the remote repo once again into a directory on your WSL2, it comes with make pre-installed.
  • cd into the cloned local repo, create a virtual environment using "python3 -m venv env" and activate the virtual environment using "source env/bin/activate"
  • run "pip install -r requirements.py" to install all the dependencies in the virtual environments.
  • Now follow along with the instructions provided above on the task description and remember to "run sudo chmod 777 src/" If you're having troubles with file/folder/database permissions

Using this setup has a streamlined workflow and access to a wide range of Linux tools and utilities like make. You can try this and don’t forget hit me back if you’re having difficulty getting this setup running, I'll be glad to assist.

Hello mentors @MGalves_WMB @Ederporto @ACorrea-WMB I would like to clarify whether we are required to create pull requests for our contributions, or if we simply record our contributions as they are.
Thank you for your guidance

Hey @Mankav, No, you're not to create pull requests. I can't imagine everyone creating pull requests for the same task.
As @ACorrea-WMB mentioned in line 15, you're to simply record a link to your repository that holds the tasks you've implemented from lines 1 through 14.

PLEASE HELP, I am stuck at bullet point 8 because my src file refuses to be copied into my docker/shell environment. Both cmd.sh and requirements.txt are copied but not src and I have tried everything I know, including tweaking the dockerfile to enable the file to be copied, does anyone know how i can fix this please?

Hello @Nayohmeee, could you please provide a screenshot of the error you are encountering? This will help me understand the issue better.

Additionally, did you run the command sudo chmod 777 src/? This command ensures that the src directory has the necessary permissions for reading, writing, and executing.

Hi thanks for replying, there is no error message. The src file is not copied on to the src folder on docker , yes it exists but there is nothing inside the folder. I wonder if i should manually copy the files myself , and yes I have tried the sudo chmod command severally too

PLEASE HELP, I am stuck at bullet point 8 because my src file refuses to be copied into my docker/shell environment. Both cmd.sh and requirements.txt are copied but not src and I have tried everything I know, including tweaking the dockerfile to enable the file to be copied, does anyone know how i can fix this please?

Hi Nayohmeee, sorry about the issue you're having getting things to work fine. I suspect the problem is with the way you're managing your development environment, so I'm going to recommend you install Windows Subsystem for Linux 2 (WSL2) and run Docker using it as the backend if you’re running on Windows 10 and above. This way you may not need to manually copy any file or directory into the docker/shell environment as docker directly uses it for it's backend. WSL2 provides a more Linux-like environment with better performance and compatibility, making it ideal for developing with tools like make.
Here's how to get started,

  • Install WSL2 from Microsoft store.
  • Configure Docker to use WSL2 by following the instructions on this link https://docs.docker.com/desktop/install/windows-install/
  • Clone the remote repo once again into a directory on your WSL2, it comes with make pre-installed.
  • cd into the cloned local repo, create a virtual environment using "python3 -m venv env" and activate the virtual environment using "source env/bin/activate"
  • run "pip install -r requirements.py" to install all the dependencies in the virtual environments.
  • Now follow along with the instructions provided above on the task description and remember to "run sudo chmod 777 src/" If you're having troubles with file/folder/database permissions

Using this setup has a streamlined workflow and access to a wide range of Linux tools and utilities like make. You can try this and don’t forget hit me back if you’re having difficulty getting this setup running, I'll be glad to assist.

Thank you for replying and thanks for the tips, let me try this and i will let you know how it goes

PLEASE HELP, I am stuck at bullet point 8 because my src file refuses to be copied into my docker/shell environment. Both cmd.sh and requirements.txt are copied but not src and I have tried everything I know, including tweaking the dockerfile to enable the file to be copied, does anyone know how i can fix this please?

Hi Nayohmeee, sorry about the issue you're having getting things to work fine. I suspect the problem is with the way you're managing your development environment, so I'm going to recommend you install Windows Subsystem for Linux 2 (WSL2) and run Docker using it as the backend if you’re running on Windows 10 and above. This way you may not need to manually copy any file or directory into the docker/shell environment as docker directly uses it for it's backend. WSL2 provides a more Linux-like environment with better performance and compatibility, making it ideal for developing with tools like make.
Here's how to get started,

  • Install WSL2 from Microsoft store.
  • Configure Docker to use WSL2 by following the instructions on this link https://docs.docker.com/desktop/install/windows-install/
  • Clone the remote repo once again into a directory on your WSL2, it comes with make pre-installed.
  • cd into the cloned local repo, create a virtual environment using "python3 -m venv env" and activate the virtual environment using "source env/bin/activate"
  • run "pip install -r requirements.py" to install all the dependencies in the virtual environments.
  • Now follow along with the instructions provided above on the task description and remember to "run sudo chmod 777 src/" If you're having troubles with file/folder/database permissions

Using this setup has a streamlined workflow and access to a wide range of Linux tools and utilities like make. You can try this and don’t forget hit me back if you’re having difficulty getting this setup running, I'll be glad to assist.

so far i have been able to work with wsl but granting permissions on windows for the src/ does not seem to apply on the docker environment, I have tried granting permissions but somehow it refuses to reflect on docker. Has anyone had this isue

PLEASE HELP, I am stuck at bullet point 8 because my src file refuses to be copied into my docker/shell environment. Both cmd.sh and requirements.txt are copied but not src and I have tried everything I know, including tweaking the dockerfile to enable the file to be copied, does anyone know how i can fix this please?

Hi Nayohmeee, sorry about the issue you're having getting things to work fine. I suspect the problem is with the way you're managing your development environment, so I'm going to recommend you install Windows Subsystem for Linux 2 (WSL2) and run Docker using it as the backend if you’re running on Windows 10 and above. This way you may not need to manually copy any file or directory into the docker/shell environment as docker directly uses it for it's backend. WSL2 provides a more Linux-like environment with better performance and compatibility, making it ideal for developing with tools like make.
Here's how to get started,

  • Install WSL2 from Microsoft store.
  • Configure Docker to use WSL2 by following the instructions on this link https://docs.docker.com/desktop/install/windows-install/
  • Clone the remote repo once again into a directory on your WSL2, it comes with make pre-installed.
  • cd into the cloned local repo, create a virtual environment using "python3 -m venv env" and activate the virtual environment using "source env/bin/activate"
  • run "pip install -r requirements.py" to install all the dependencies in the virtual environments.
  • Now follow along with the instructions provided above on the task description and remember to "run sudo chmod 777 src/" If you're having troubles with file/folder/database permissions

Using this setup has a streamlined workflow and access to a wide range of Linux tools and utilities like make. You can try this and don’t forget hit me back if you’re having difficulty getting this setup running, I'll be glad to assist.

so far i have been able to work with wsl but granting permissions on windows for the src/ does not seem to apply on the docker environment, I have tried granting permissions but somehow it refuses to reflect on docker. Has anyone had this isue

If you have been able to install WSL2 successfully and connected docker to use it for backend then all you need to do is issue the change permission command directly on WSL2 terminal. Just cd into the project directory and run sudo chmod 777 src/ inside the WS2 terminal . As long as you have docker desktop running, issue the command make run will start the app assuming you followed all the instructions provided in the project description religiously. You can do all these right inside WSL2 but you must remember to have Docker desktop running. If you're still not getting it then we can consider scheduling a video call on Zulip.

Hello everyone! I have a question about instruction 3. If im understanding correctly it says to create a copy of env.SAMPLE and name it env. There is already a file called env so does that mean i rename the original env file. TIA!

Hello everyone! I have a question about instruction 3. If im understanding correctly it says to create a copy of env.SAMPLE and name it env. There is already a file called env so does that mean i rename the original env file. TIA!

Good morning @Emceerain. You can simply modify the existing file to meet your needs. I believe the essence of dropping the env.SAMPLE is to give you a feel for how the final state of env should look after you have generated and included the SECRET_KEY. The env file already has the structure with some placeholders, just modify it by including the SECRET_KEY to make it look like the env.SAMPLE. You can also delete env by running rm etc/env, touch etc/env and finally, cat etc/env.SAMPLE > etc/env before making your modifications if you really want to start all over from scratch.

Hello mentors @MGalves_WMB @Ederporto @ACorrea-WMB I would like to clarify whether we are required to create pull requests for our contributions, or if we simply record our contributions as they are.
Thank you for your guidance

Hey @Mankav, No, you're not to create pull requests. I can't imagine everyone creating pull requests for the same task.
As @ACorrea-WMB mentioned in line 15, you're to simply record a link to your repository that holds the tasks you've implemented from lines 1 through 14.

Hi @Udonels , thank you

@Okay-michael Thank you for that! Now when i run the createsuper user command the terminal asks for email and password. Not sure what to do from there

@Okay-michael Thank you for that! Now when i run the createsuper user command the terminal asks for email and password. Not sure what to do from there

You can go ahead and supply those details, the application creates a user with some elevated privileges for you using those details and you can use them to log into the admin page and even create more users from the backend of the application. Sorry my response is a little late.

Greetings everyone. My name is Levis Ngigi and I am here as an outreachy applicant. I recorded my contribution last week but I have not yet submitted a final application. If I am not wrong just recording my contribution without submitting it should be enough as I wait to get feedback from the mentors? Just wanted to ensure I did the right thing so that I am able to get feedback. Thank you.

Greetings everyone. My name is Levis Ngigi and I am here as an outreachy applicant. I recorded my contribution last week but I have not yet submitted a final application. If I am not wrong just recording my contribution without submitting it should be enough as I wait to get feedback from the mentors? Just wanted to ensure I did the right thing so that I am able to get feedback. Thank you.

Good Evening @LevisNgigi Regarding your concern about finalizing your application, I think we're yet to get to that phase. The mentors said they'll review our contributions and provide feedback hopefully by next week, so I believe you're still in order. Many people haven't even recorded contributions. We can wait on them while we use the time to improve on some of those skills listed for one to be successful with the internship. You can always check in daily to know if there’s any new task or announcement from our mentors.

@Okay-michael Thank you for that! Now when i run the createsuper user command the terminal asks for email and password. Not sure what to do from there

Hey @Emceerain, just to be sure you're on track. Remember that we have defined tasks by our mentors already. I doubt if you're to interact with the app just yet.
If you've accomplished the listed tasks, then forgive my undersight, and good luck tinkering.

PLEASE HELP, I am stuck at bullet point 8 because my src file refuses to be copied into my docker/shell environment. Both cmd.sh and requirements.txt are copied but not src and I have tried everything I know, including tweaking the dockerfile to enable the file to be copied, does anyone know how i can fix this please?

Hi Nayohmeee, sorry about the issue you're having getting things to work fine. I suspect the problem is with the way you're managing your development environment, so I'm going to recommend you install Windows Subsystem for Linux 2 (WSL2) and run Docker using it as the backend if you’re running on Windows 10 and above. This way you may not need to manually copy any file or directory into the docker/shell environment as docker directly uses it for it's backend. WSL2 provides a more Linux-like environment with better performance and compatibility, making it ideal for developing with tools like make.
Here's how to get started,

  • Install WSL2 from Microsoft store.
  • Configure Docker to use WSL2 by following the instructions on this link https://docs.docker.com/desktop/install/windows-install/
  • Clone the remote repo once again into a directory on your WSL2, it comes with make pre-installed.
  • cd into the cloned local repo, create a virtual environment using "python3 -m venv env" and activate the virtual environment using "source env/bin/activate"
  • run "pip install -r requirements.py" to install all the dependencies in the virtual environments.
  • Now follow along with the instructions provided above on the task description and remember to "run sudo chmod 777 src/" If you're having troubles with file/folder/database permissions

Using this setup has a streamlined workflow and access to a wide range of Linux tools and utilities like make. You can try this and don’t forget hit me back if you’re having difficulty getting this setup running, I'll be glad to assist.

so far i have been able to work with wsl but granting permissions on windows for the src/ does not seem to apply on the docker environment, I have tried granting permissions but somehow it refuses to reflect on docker. Has anyone had this isue

If you have been able to install WSL2 successfully and connected docker to use it for backend then all you need to do is issue the change permission command directly on WSL2 terminal. Just cd into the project directory and run sudo chmod 777 src/ inside the WS2 terminal . As long as you have docker desktop running, issue the command make run will start the app assuming you followed all the instructions provided in the project description religiously. You can do all these right inside WSL2 but you must remember to have Docker desktop running. If you're still not getting it then we can consider scheduling a video call on Zulip.

@Okay-michael Thank you was able to complete that step. I now seem to be having trouble seeing the changes im making in the pico.jade.min.css being shown on the local host for step 12. Any idea why?

@Okay-michael Thank you was able to complete that step. I now seem to be having trouble seeing the changes im making in the pico.jade.min.css being shown on the local host for step 12. Any idea why?

Alright @Emceerain , I'm glad you've made some headway. Be sure to take screenshots of the current UI for step 11 before making any modifications. Afterward use your browser's developer tool to inspect and Identify those rules that style the buttons as green and modify them accordingly to blues. You can hit me back if you have a hard time on any of the steps.

@Okay-michael Okay. Well i was actually able to successfully modify the button in the browser developer tools. I thought i also had to get the changes done from my code editor as well. So in that case i can just take a screenshot of the changes done in my browser developer and be done with this step

@Okay-michael Okay. Well i was actually able to successfully modify the button in the browser developer tools. I thought i also had to get the changes done from my code editor as well. So in that case i can just take a screenshot of the changes done in my browser developer and be done with this step

I don't think that will be a great idea @Emceerain, remember, the changes you make are to be committed and pushed back to your remote repo where the mentors will be able to see and grade them. So it's important you make those changes on the source code and push to your repo. This is my personal opinion here.

@Okay-michael Yes i agree. Well it seem im not doing something right with the css modification. Ive noted there is pico.jade.min.css file as well as a base.css, darkmode.css If i understand correctly these are the files that i should be making adjustments for the button right? @ACorrea-WMB

@Okay-michael Yes i agree. Well it seem im not doing something right with the css modification. Ive noted there is pico.jade.min.css file as well as a base.css, darkmode.css If i understand correctly these are the files that i should be making adjustments for the button right? @ACorrea-WMB

You're very correct, but you have to be sure you're modifying the right css property. Inspect the button you wish to modify and cross-examine its style with the css file. I'm sure if you tinker enough you'll see.

@Okay-michael Yes i agree. Well it seem im not doing something right with the css modification. Ive noted there is pico.jade.min.css file as well as a base.css, darkmode.css If i understand correctly these are the files that i should be making adjustments for the button right? @ACorrea-WMB

Alright @Emceerain, I'm going to suggest you create a custom CSS rule that will overwrite some rules in pico.jade.min.css and style the buttons as blue.

You can follow these steps to do just that,

  • Identify the CSS Rule: Use your browser's developer tools to inspect the button elements you want to modify. Locate the CSS rule that controls their styling (e.g., a class name or ID).
  • Create a Custom CSS File: Create a new CSS file named custom.css in the src/static directory
  • Copy and Modify the CSS Rule: Copy the CSS rule from the developer tools into the custom.css file. Modify the relevant properties (e.g., background-color, color) to achieve the desired blue button style.
  • Link the Custom CSS File: In src/web/templates/layout.html, add a <link> tag pointing to custom.css after the pico.jade.min.css link. This step is important, linking it before pico.jade.min.css won’t have any effect since all you want to do is overwrite the already existing CSS rules.
  • Test to confirm you got the desired look: Run the application locally and test the changes. Make further adjustments to the CSS rules in custom.css as needed to achieve the desired button style.

This approach ensures you don’t mess up the existing CSS rules and you can easily revert by deleting the custom.css file. I hope this resolves it for you.

PLEASE HELP, I am stuck at bullet point 8 because my src file refuses to be copied into my docker/shell environment. Both cmd.sh and requirements.txt are copied but not src and I have tried everything I know, including tweaking the dockerfile to enable the file to be copied, does anyone know how i can fix this please?

Hi Nayohmeee, sorry about the issue you're having getting things to work fine. I suspect the problem is with the way you're managing your development environment, so I'm going to recommend you install Windows Subsystem for Linux 2 (WSL2) and run Docker using it as the backend if you’re running on Windows 10 and above. This way you may not need to manually copy any file or directory into the docker/shell environment as docker directly uses it for it's backend. WSL2 provides a more Linux-like environment with better performance and compatibility, making it ideal for developing with tools like make.
Here's how to get started,

  • Install WSL2 from Microsoft store.
  • Configure Docker to use WSL2 by following the instructions on this link https://docs.docker.com/desktop/install/windows-install/
  • Clone the remote repo once again into a directory on your WSL2, it comes with make pre-installed.
  • cd into the cloned local repo, create a virtual environment using "python3 -m venv env" and activate the virtual environment using "source env/bin/activate"
  • run "pip install -r requirements.py" to install all the dependencies in the virtual environments.
  • Now follow along with the instructions provided above on the task description and remember to "run sudo chmod 777 src/" If you're having troubles with file/folder/database permissions

Using this setup has a streamlined workflow and access to a wide range of Linux tools and utilities like make. You can try this and don’t forget hit me back if you’re having difficulty getting this setup running, I'll be glad to assist.

so far i have been able to work with wsl but granting permissions on windows for the src/ does not seem to apply on the docker environment, I have tried granting permissions but somehow it refuses to reflect on docker. Has anyone had this isue

If you have been able to install WSL2 successfully and connected docker to use it for backend then all you need to do is issue the change permission command directly on WSL2 terminal. Just cd into the project directory and run sudo chmod 777 src/ inside the WS2 terminal . As long as you have docker desktop running, issue the command make run will start the app assuming you followed all the instructions provided in the project description religiously. You can do all these right inside WSL2 but you must remember to have Docker desktop running. If you're still not getting it then we can consider scheduling a video call on Zulip.

i might have to take you up on the zulip video call offer, cos i still have the same 'permissions denied' issue. When is a good time for you please?

PLEASE HELP, I am stuck at bullet point 8 because my src file refuses to be copied into my docker/shell environment. Both cmd.sh and requirements.txt are copied but not src and I have tried everything I know, including tweaking the dockerfile to enable the file to be copied, does anyone know how i can fix this please?

Hi Nayohmeee, sorry about the issue you're having getting things to work fine. I suspect the problem is with the way you're managing your development environment, so I'm going to recommend you install Windows Subsystem for Linux 2 (WSL2) and run Docker using it as the backend if you’re running on Windows 10 and above. This way you may not need to manually copy any file or directory into the docker/shell environment as docker directly uses it for it's backend. WSL2 provides a more Linux-like environment with better performance and compatibility, making it ideal for developing with tools like make.
Here's how to get started,

  • Install WSL2 from Microsoft store.
  • Configure Docker to use WSL2 by following the instructions on this link https://docs.docker.com/desktop/install/windows-install/
  • Clone the remote repo once again into a directory on your WSL2, it comes with make pre-installed.
  • cd into the cloned local repo, create a virtual environment using "python3 -m venv env" and activate the virtual environment using "source env/bin/activate"
  • run "pip install -r requirements.py" to install all the dependencies in the virtual environments.
  • Now follow along with the instructions provided above on the task description and remember to "run sudo chmod 777 src/" If you're having troubles with file/folder/database permissions

Using this setup has a streamlined workflow and access to a wide range of Linux tools and utilities like make. You can try this and don’t forget hit me back if you’re having difficulty getting this setup running, I'll be glad to assist.

so far i have been able to work with wsl but granting permissions on windows for the src/ does not seem to apply on the docker environment, I have tried granting permissions but somehow it refuses to reflect on docker. Has anyone had this isue

If you have been able to install WSL2 successfully and connected docker to use it for backend then all you need to do is issue the change permission command directly on WSL2 terminal. Just cd into the project directory and run sudo chmod 777 src/ inside the WS2 terminal . As long as you have docker desktop running, issue the command make run will start the app assuming you followed all the instructions provided in the project description religiously. You can do all these right inside WSL2 but you must remember to have Docker desktop running. If you're still not getting it then we can consider scheduling a video call on Zulip.

i might have to take you up on the zulip video call offer, cos i still have the same 'permissions denied' issue. When is a good time for you please?

I would love to join the call too.

@Okay-michael Yes i agree. Well it seem im not doing something right with the css modification. Ive noted there is pico.jade.min.css file as well as a base.css, darkmode.css If i understand correctly these are the files that i should be making adjustments for the button right? @ACorrea-WMB

hi remember Django uses the Jinja templeting engine for modularity and separating concerns.
So forexample in the layout.html, you can define styles that reference the elements else where and this file is inherited in those other files, these styles as long as they have a more specific style they should overide the pre-made css files from pico css framework/lib

PLEASE HELP, I am stuck at bullet point 8 because my src file refuses to be copied into my docker/shell environment. Both cmd.sh and requirements.txt are copied but not src and I have tried everything I know, including tweaking the dockerfile to enable the file to be copied, does anyone know how i can fix this please?

Hello @Nayohmeee, could you please provide a screenshot of the error you are encountering? This will help me understand the issue better.

Additionally, did you run the command sudo chmod 777 src/? This command ensures that the src directory has the necessary permissions for reading, writing, and executing.

Hi thanks for replying, there is no error message. The src file is not copied on to the src folder on docker , yes it exists but there is nothing inside the folder. I wonder if i should manually copy the files myself , and yes I have tried the sudo chmod command severally too

what is your output of this:

ls -la $(pwd)/src

Note that using chmod is good, but you need to ensure both the Docker daemon and the running container have access to the folder

try:

sudo chmod -R 755 $(pwd)/src
sudo chown -R $USER:$USER $(pwd)/src

PLEASE HELP, I am stuck at bullet point 8 because my src file refuses to be copied into my docker/shell environment. Both cmd.sh and requirements.txt are copied but not src and I have tried everything I know, including tweaking the dockerfile to enable the file to be copied, does anyone know how i can fix this please?

Hello @Nayohmeee, could you please provide a screenshot of the error you are encountering? This will help me understand the issue better.

Additionally, did you run the command sudo chmod 777 src/? This command ensures that the src directory has the necessary permissions for reading, writing, and executing.

Hi thanks for replying, there is no error message. The src file is not copied on to the src folder on docker , yes it exists but there is nothing inside the folder. I wonder if i should manually copy the files myself , and yes I have tried the sudo chmod command severally too

what is your output of this:

ls -la $(pwd)/src

on my local machine all the src/ files/folders have rwx permissions, but on docker/wsl2 they dont have those permissions

Note that using chmod is good, but you need to ensure both the Docker daemon and the running container have access to the folder

try:

sudo chmod -R 755 $(pwd)/src
sudo chown -R $USER:$USER $(pwd)/src

I have tried this and other commands and still i get the permission denied error

@Nayohmeee i mean whats your output for ;

ls -la $(pwd)/src

It is one thing files being mounted and have no permission, and files not being mounted at all to the container.
So where and when are you getting permission denied, when running which command.

Goodmorning @Nayohmeee @Thenoblet . I'm available to join you on a Zulip video call anytime between 9 AM and 10 PM Nigerian Time (WAT) which is 4:00 AM to 5 PM UTC. Please let me know when you're free.

PLEASE HELP, I am stuck at bullet point 8 because my src file refuses to be copied into my docker/shell environment. Both cmd.sh and requirements.txt are copied but not src and I have tried everything I know, including tweaking the dockerfile to enable the file to be copied, does anyone know how i can fix this please?

Hi Nayohmeee, sorry about the issue you're having getting things to work fine. I suspect the problem is with the way you're managing your development environment, so I'm going to recommend you install Windows Subsystem for Linux 2 (WSL2) and run Docker using it as the backend if you’re running on Windows 10 and above. This way you may not need to manually copy any file or directory into the docker/shell environment as docker directly uses it for it's backend. WSL2 provides a more Linux-like environment with better performance and compatibility, making it ideal for developing with tools like make.
Here's how to get started,

  • Install WSL2 from Microsoft store.
  • Configure Docker to use WSL2 by following the instructions on this link https://docs.docker.com/desktop/install/windows-install/
  • Clone the remote repo once again into a directory on your WSL2, it comes with make pre-installed.
  • cd into the cloned local repo, create a virtual environment using "python3 -m venv env" and activate the virtual environment using "source env/bin/activate"
  • run "pip install -r requirements.py" to install all the dependencies in the virtual environments.
  • Now follow along with the instructions provided above on the task description and remember to "run sudo chmod 777 src/" If you're having troubles with file/folder/database permissions

Using this setup has a streamlined workflow and access to a wide range of Linux tools and utilities like make. You can try this and don’t forget hit me back if you’re having difficulty getting this setup running, I'll be glad to assist.

so far i have been able to work with wsl but granting permissions on windows for the src/ does not seem to apply on the docker environment, I have tried granting permissions but somehow it refuses to reflect on docker. Has anyone had this isue

If you have been able to install WSL2 successfully and connected docker to use it for backend then all you need to do is issue the change permission command directly on WSL2 terminal. Just cd into the project directory and run sudo chmod 777 src/ inside the WS2 terminal . As long as you have docker desktop running, issue the command make run will start the app assuming you followed all the instructions provided in the project description religiously. You can do all these right inside WSL2 but you must remember to have Docker desktop running. If you're still not getting it then we can consider scheduling a video call on Zulip.

i might have to take you up on the zulip video call offer, cos i still have the same 'permissions denied' issue. When is a good time for you please?

I would love to join the call too.

Goodmorning @Nayohmeee @Thenoblet . I'm available to join you on a Zulip video call anytime between 9 AM and 10 PM Nigerian Time (WAT) which is 4:00 AM to 5:00 PM UTC. Please let me know when you're free.

Please do not full-quote entire numerous comments, but keep things readable by only quoting what you actually refer to. Thanks.

Noted, thank you @Aklapper for pointing this out for us.

@Okay-michael I was finally able to get the colour change. What ended up working was writing the css directly in the layout.html. Thank you so much all your input, it's helped me out immensely.

@Victoriamusasizi thank you as well!

@Okay-michael I was finally able to get the colour change. What ended up working was writing the css directly in the layout.html. Thank you so much all your input, it's helped me out immensely.

@Victoriamusasizi thank you as well!

You're welcome @Emceerain. It was my pleasure to assist you. Please don't hesitate to reach out if you need further assistance.

@Okay-michael I was finally able to get the colour change. What ended up working was writing the css directly in the layout.html. Thank you so much all your input, it's helped me out immensely.

@Victoriamusasizi thank you as well!

@Victoriamusasizi that was nice of you explaining the templating engine jinja

Hello everyone, I am asking regarding the task. For the env file, When we generate a key and add it, it is pushed to github when we do so, Isn't the key supposed to only be used locally because GitGuardian does not recommend submitting such keys for security purposes. I thought env files remain local.

Hello everyone, I am asking regarding the task. For the env file, When we generate a key and add it, it is pushed to github when we do so, Isn't the key supposed to only be used locally because GitGuardian does not recommend submitting such keys for security purposes. I thought env files remain local.

Yes, you're correct. You're to include such files in the .ignore file so they can be ignored when pushing to Github.

Hello everyone, I am asking regarding the task. For the env file, When we generate a key and add it, it is pushed to github when we do so, Isn't the key supposed to only be used locally because GitGuardian does not recommend submitting such keys for security purposes. I thought env files remain local.

Yes, you're correct. You're to include such files in the .ignore file so they can be ignored when pushing to Github.

Okay then

Hello everyone, I am asking regarding the task. For the env file, When we generate a key and add it, it is pushed to github when we do so, Isn't the key supposed to only be used locally because GitGuardian does not recommend submitting such keys for security purposes. I thought env files remain local.

Hi @Immaculate-Atim,

As @Udonels mentioned, you can add this file to .gitignore if you don’t want it to be tracked by Git but one thing to note is that if a file was already tracked by Git before adding it to .gitignore, it will remain tracked even after adding it to .gitignore and the funny thing is that GitGuardian won’t warn you the second time but the file will remain tracked and visible in you remote repo.

To remove the file from Git's tracking,
before your next commit run the following git command once you're inside the project directory

git rm --cached etc/env

This will ensure that the file is no longer tracked in both your local and remote repositories.

Please move general discussions how to use Git to Zulip instead - thanks a lot!

Please move general discussions how to use Git to Zulip instead - thanks a lot!

Noted

Please move general discussions how to use Git to Zulip instead - thanks a lot!

thanks

Please move general discussions how to use Git to Zulip instead - thanks a lot!

Alright @Aklapper, Noted

I'm kinda lost, please what's the next contribution?

Good morning @Fusedtechie,
If you've completed the task above, then wait for the mentors to review it before submitting your final application.

I'm kinda lost, please what's the next contribution?

Hi @Fusedtechie , I don't think there is another task as at now.

I'm kinda lost, please what's the next contribution?

Oh, I realize you're just joining @Fusedtechie; you're highly welcome. You can carefully go through the task description above to set up and do the task, then record it as your contribution. If you ever get stuck on any step, feel free to reach out; anyone available will guide you through, although you can also go through our chats above to see if the issue you want to solve is already addressed. The task is still valid until 29th of this month.

I'm kinda lost, please what's the next contribution?

Hi @Fusedtechie, welcome. Don't remiss our chats on Zulip.

Thank you @Okay-michael I had submitted the task already. Thank you too @Mankav

Thank you @Okay-michael I had submitted the task already. Thank you too @Mankav

You're welcome.

debt subscribed.

Closing this as done, as interns have been selected for Outreachy Round 29.