OpenEnergyPlatform / oeplatform

Repository for the code of the Open Energy Platform (OEP) website. The OEP provides an interface to the Open Energy Family
http://openenergyplatform.org/
GNU Affero General Public License v3.0
62 stars 19 forks source link

Rework OEP Profile page #1170

Closed Darynarli closed 1 year ago

Darynarli commented 1 year ago

Question:

  1. What kind of Mockups do you need?
  2. What is the size limit for a profile photo?
  3. Who does the front development (design)?
  4. What is the logic of getting stars? Is there a logic already or can I offer ideas?
  5. There are restrictions on how often you can change your name/email/password
  6. Is the function to delete a profile available or just log out of a profile?
  7. What do you want it to be in settings?
  8. What is a pending review?
  9. Is it possible for other users to be able to view someone's profile (if, for example, they saw the author of an article or table, will the author be visible there?)

What I want to do: Profile description

  1. profile photo can be added
  2. account lifetime
  3. mail
  4. Social media links (optional)
  5. achievement stars

Actions:

  1. table button: when the button is pressed, all tables created by the user, which are links to the table itself, are displayed; what is the topic of the table; when it was uploaded, filtered by date in descending order ; who has been reviewed
  2. reviews button: when you click on the button, all reviews created by the user are displayed, which are a link to the review itself; review creation date, filtered by date in descending order
  3. settings: when the button is pressed, a link to the token is displayed; Name; email; affiliation; description; the edit button, by clicking on which you can change the name/email/affiliation/description; change password button, by clicking on which you can change the password
  4. for those who come to see someone else's profile, there will be all functions except settings
bmlancien commented 1 year ago

Hi, I will try to answer some of your questions.

  1. What kind of Mockups do you need?

If you want/need to do some mockups, you can create low-fidelity ones in black and white (or whatever suits you). It can also be flowcharts if it's easier for you of it it makes more sense in order to explain the process. Maybe in the future we can standardize the mockup creation process so it can be better integrated into the documentation.

  1. What is the size limit for a profile photo?

No idea, I guess it's more a technical question. The profile image should have a 1:1 ratio at the end (square) or displayed as a circle.

  1. Who does the front development (design)?

I'm responsible for the design part and I also implement part of it (mostly HTML and CSS) but I don't go into the deep technical stuff. It also means I'm the one that create high-fidelity mockups in Figma.

  1. What is the logic of getting stars? Is there a logic already or can I offer ideas?

Nothing has been decided yet. But my idea was to use gamification principles to stimulate users to be more active on the platform. How to create high quality metadata is already covered by the metadata badges. But apart from that, how to bring people to add more data or to take some time and review other tables, etc. So the idea is basically to add a first achievement badge (or star) as soon as the user does something on the platform, such as uploading a new table. A badge could be a tiny small action. At the end, we need to know what we want the users to do on the platform to make the whole app better, and from there we can find the type of achievement badges users can have.

You can definitely add your input on that, but it hasn't been decided yet if we would implement this feature. At least not as far as I know.

  1. Is the function to delete a profile available or just log out of a profile?

I cannot talk from a technical perspective, but I think this is legally necessary to have that option, because of data protection. And as user I would always want to have that possibility.

  1. What do you want it to be in settings?

That's a good question. I would put there everything we have as informations and options for the user, such as what you already mentioned + privacy, notifications, account settings, etc. Maybe we could open an issue just for that @jh-RLI ?

  1. Is it possible for other users to be able to view someone's profile (if, for example, they saw the author of an article or table, will the author be visible there?)

I think it would be a good idea to have that option. I would divide someone's data into public and private data, of course. It's a bit related to question 7. A simple approach would be, as you wrote, that everything that is under "Settings" is not visible to the public, but the rest is.

I hope it helps. FYI the mockups I did of the profile on Figma were not final designs, but more sketches on about how a profile could look like. If you or someone else needs a high-fidelity mockup, just let me know.

Darynarli commented 1 year ago
  1. I like the current Mockups, but there are several options for the table. When will the final version be, what should the profile design look like?
  2. When will the gamification feature be decided?
  3. Are there any sessions?
bmlancien commented 1 year ago

I like the current Mockups, but there are several options for the table. When will the final version be, what should the profile design look like? When will the gamification feature be decided?

I don't know. @jh-RLI is the profile page already on the to-do list?

jh-RLI commented 1 year ago

Hey, looks great so far @Darynarli 👍 The final version will come from the result of your work and you are good to go (it is on the to-do list). You create the concept for the functionalities and create the basic concept of the page. You can also create a basic layout, but that already exists in this case. As @bmlancien said he will support you and do the design part and implement it later and you will implement the Backend (django stuff). As a result we will work out the final solution together but you are the main developer for this feature :) .

PS: I will create a GitHubb-Project and add this Issue. You can create more issues and add them to the Project. There is a Kanban-Board that you can use. You can move the issues you are currently working on to the in-progress column: https://github.com/OpenEnergyPlatform/oeplatform/projects/25

jh-RLI commented 1 year ago
  1. When will the gamification feature be decided?

It would be good if you could start working this out. You can start with a very basic idea that is easy to implement. We want to incentivize users, so we want to have features like this. Once you have something we can dicuss it and improve it together.

if something is not clear to you we can also discuss this first.

  1. Are there any sessions?

There is a django session cookie that can be used. In general we try not to store alot of user data.

jh-RLI commented 1 year ago
  1. There are restrictions on how often you can change your name/email/password

I think there are no restictions so far and i think we can keep it this way if there are no reasons against it :)

  1. Is the function to delete a profile available or just log out of a profile?

I think we miss such a functionality, users will have to write a e-mail and ask us to delete at the moment.

  1. What do you want it to be in settings?

Thats something we should discuss together with @christian-rli @Ludee and others maybe in the developer meeting

  1. What is a pending review?

As far as i remember this means the table is uploaded but was not reviewed so far. A reviewer can pick up this table and review it.

  1. Is it possible for other users to be able to view someone's profile (if, for example, they saw the author of an article or table, will the author be visible there?)

I like the idea but thas also something we should discuss with the others :)

Darynarli commented 1 year ago

Hello. I know that every project has a technical description and specification, who will do it? Should I make it and send it or someone will send it to me?

Darynarli commented 1 year ago

Hi. I took a profile photo now. Do I need to commit every step or every part of profile page, what I make?

jh-RLI commented 1 year ago

You mean you have started the development? Or did you actually take a picture? Regarding the commit, you should aim for atomic commits (my interpretation is that you want to make small commits without hurting yourself - my practical approach is to never commit a whole file, but commit small parts of the code no bigger than a single function (a function should not be that big)

jh-RLI commented 1 year ago

And use the issue ID #1170 at the end of your commit message, this will show the commit here.

Darynarli commented 1 year ago

And what branch?

jh-RLI commented 1 year ago

It should be named like feature/extend-profile-page#1170 you should 1. checkout develop and pull all latst changes 2. create the new Branche 3. Start coding

have a look at the https://github.com/OpenEnergyPlatform/oeplatform/blob/develop/CONTRIBUTING.md

jh-RLI commented 1 year ago

@Darynarli Please also implement tests if needed. Currently, there should be at least tests for your python code.

Here is a complex example of some tests related to "create table" RESTapi functionality:

setup test classes

test

(Just for your information) We do not have a JavaScript test system setup yet, if you want you can also look into this and try to run tests for possible java script code, that you might not even need for your proposed functionality:

Darynarli commented 1 year ago

Hi. I have a question about reviews. Where can I found all the reviews? I can't quite figure out what is it?

jh-RLI commented 1 year ago

This is something that is still in developement https://github.com/OpenEnergyPlatform/oeplatform/pull/1033 You can check out the mockups in Figma to get a better idea. @christian-rli is working on them, but it is currently postponed due to too many other tasks.

Darynarli commented 1 year ago

Then wait for it to be implemented and then implement it in the profile page, do I understand correctly?

jh-RLI commented 1 year ago

Yes you can add the page but keep it empty or hide it for now :)

Darynarli commented 1 year ago

okey)

Darynarli commented 1 year ago

I made all Profile page except review

jh-RLI commented 1 year ago

The backend functionality is okay now. Frontend will be added soon.

jh-RLI commented 1 year ago

The UI will be implemented by #1218