#web-development

2 messages Β· Page 96 of 1

viscid roost
#

Angular for frontend

#

Flutter for Desktop and IOS

topaz widget
#

@viscid roost And then angular on the front-end?

viscid roost
#

Yeah

topaz widget
#

whoop, sorry

#

saw that after posting.

viscid roost
#

No worry

plush fjord
#

For frontend, do you generally go with a server or a static site solution? (say, netlify)

viscid roost
#

Angular is amazing.... I also tried react.... But Vue is better than react

topaz widget
#

I liked Vue best when scoping each one out.

viscid roost
#

Bro we connect frontend with backend

native tide
#

What's angular?

vestal hound
#

a frontend framework

topaz widget
#

It's a front-end framework.

viscid roost
#

FF

topaz widget
#

FEF

viscid roost
#

Never mix Frontend and Backend

topaz widget
#

Why not?

#

Portability?

viscid roost
#

What???

topaz widget
#

Code portability

viscid roost
#

Maintaining the code will be huge problem

#

Are you serious

vestal hound
#

it depends

#

on what you're doing.

topaz widget
#

I just wanted to see what you're getting at.

vestal hound
#

for small things

topaz widget
#

I understand the rationale.

vestal hound
#

having two separate codebases can be unneeded overhead.

topaz widget
#

But there are some cases where it's easier not to fully separate.

viscid roost
#

It didn't mean to code bases

#

I mean all the server side in Django

#

All the Frontend code in Angular

#

Android in Kotlib

#

Windows, IOS Flutter

plush fjord
#

Portability comes into picture when we're dealing with a product-based solution (say you want to deploy it as an entire application, like Jira/Confluence). But if you're offering cloud-based services (say gmail), then it's a general idea to keep the FE & BE separate

topaz widget
#

Okay, so there's always a place where the front-end and the back-end have to meet, though, so I think there's a little ambiguity.

viscid roost
#

Hey but you can never connect Django + Angular

plush fjord
#

Even there's a movement going on for something called microservices where you want your product to be scalable at web scale

viscid roost
#

just Like Html in templates in DJango

topaz widget
#

Not sure what you mean.

viscid roost
#

Have you used Django

topaz widget
#

of course.

viscid roost
#

How do you run for loop in a html

#

in django project

topaz widget
#

well, you would have to do that in your template language.

white spruce
#

anyone that does web dev

plush fjord
#

Jinja?

white spruce
#

do you have to call a js function in an HTML tag for it to run?

viscid roost
#

something like this

{ % for some in somehintg %}
<p> {{ some }} </p>
{% endfor %}

#

you can't use this in Angular

topaz widget
#

@plush fjord No, the Django template language, which IS similar to Jinja, though.

#

@viscid roost Of course you can't.

viscid roost
#

Yeah... that's what I am saying

white spruce
#

@topaz widget what you think?

plush fjord
#

@topaz widget okay. I'm more of a Flask guy so that's what the first thing came to my mind. Never worked with Django...

viscid roost
#

Angular and Django rest framework are different we then connect it

topaz widget
#

@viscid roost But you CAN hybridize it.

white spruce
#

anyone could answer that question?

#

wanna know asap

topaz widget
#

@white spruce Everyone wants to know ASAP. You're not paying us so have a little humility.

viscid roost
#

Never....

white spruce
#

my bad @topaz widget never meant it that way actually

topaz widget
#

The answer is no.

white spruce
#

just meaning, I wanted to know because I am on a project and time was running out

viscid roost
#

hybridizing means slowing the performance

white spruce
#

never meant it like that

topaz widget
#

You call the HTML element in the JS, it's the other way around.

viscid roost
#

Yeah....

#

But not in Django.... You have to pass data

#

first in Angular

#

Then use TS

#

to show data

topaz widget
#

@viscid roost Yes, it's probably not best to hybridize, but it IS possible to do that.

white spruce
#

so if you don't got a function name within a tag when you run the code js code, is it that it wont work?

#

@topaz widget

viscid roost
#

I would never to do instead make http request to get the data....

#

OK bye

#

guys

topaz widget
#

@white spruce I don't understand what you're asking, but you need to query the HTML element in the JS.

turbid lava
#

he said if u dont have a function name when u run the js code it doesnt work?

topaz widget
#

@viscid roost bye if you're leaving.

white spruce
#

roman, I am asking if you don't got a function name within a tag when you run your js code, would it work

versed python
#

yes it can

topaz widget
#

Functions don't necessarily need names in JS.

versed python
#

if you add event listeners to it

topaz widget
#

() => { ... } is an anonymous function

vestal hound
#

@topaz widget out of curiosity, what's your largest project?

topaz widget
#

Probably my website.

#

I did write a program that automatically generates a website from a template, too, and that's pretty large.

#

Well, maybe not that large in absolute terms.

vestal hound
#

your website uses Django?

versed python
#

@topaz widget I think what they meant is suppose you have <p>This element isn't bound to any Javascript function</p>, but they still want to execute Javascript code on this p tag.

topaz widget
#

Then they need to either give the p element an id or query it in some way.

versed python
#

yes, they need an event listener

topaz widget
#

Yes, my website uses Django @vestal hound

#

You can check out my website, but there is a lot you won't be able to see right now, as the users section is walled off.

#

Keep in mind the landing page is a little old.

#

(home page)

versed python
#

wow this looks really good. This is actually one of the few websites that actually rendered on my tablet even though it's Javascript heavy.

topaz widget
#

@vital hare the js is really messy if you decide to look into that.

#

@versed python Thanks, yeah, I took some time to make sure it worked on most devices.

versed python
#

what UI framework did you use?

topaz widget
#

None.

#

lol

versed python
#

all the css is written by you??

topaz widget
#

Yes lol

versed python
#

I'm impressed

topaz widget
#

I wanted to learn CSS well so I made it from scratch.

versed python
#

what about the Javascript framework

#

don't tell me None

topaz widget
#

This was before I really knew how to use flexbox, though.

vestal hound
#

it does look a bit dated, but if you made everything from scratch

#

that's mega impressive

topaz widget
#

No JavaScript framework.

#

Thank you.

versed python
#

mind blowing

topaz widget
#

Here, you can check out a page that isn't linked, too.

native tide
#

Yeah this looks really good

white spruce
#

so @topaz widget to make my question clearer, do I have to put the js calling function inside a html tag for it to work?

vestal hound
#

minor suggestion

topaz widget
#

whoops

white spruce
#

I don't think it was clear enough

vestal hound
#

maybe take out the shadows for the headings under "services"?

topaz widget
#

sorry, wrong link

versed python
#

yeah it's a 404

#

but even that looks cool lol

topaz widget
#

@vestal hound I just added a whole user authentication system. The next step is to spruce up the home page.

#

@versed python If you got a 404 for signup page, that's intentional btw.

#

It's not open to users right now.

#

user accounts*

versed python
#

yeah I get it

topaz widget
#

@vestal hound So you think the shadows are heavy under the different service titles?

#

or the main one?

vestal hound
#

@vestal hound So you think the shadows are heavy under the different service titles?
@topaz widget this

topaz widget
#

Okay, thanks. Good feedback.

vestal hound
#

to my eye that kind of shadow makes it look like a 2000s blog page

#

no offence

topaz widget
#

No, it's good feedback.

#

I agree it doesn't look quite as fresh as some newer websites out there.

#

Here, actually, if you want to see something newer, here is another page that's not linked:

vestal hound
#

part of that, though, is because many new websites use frameworks

topaz widget
#

This one is not responsive.

#

You need > 1200 px viewport for this one

vestal hound
#

so everything built with a framework, in some ways, looks the "same"

#

and since yours isn't, it will look subtly unique somehow

topaz widget
#

Right.

vestal hound
#

at least, that's my guess

#

okay I think the main thing

#

on that page

#

is the fonts

topaz widget
#

That was kind of the idea actually. To make it subtly different and also learn JS and CSS by trial of fire.

vestal hound
#

I don't know why but they remind me of Windows 95

#

or 98

topaz widget
#

which one?

vestal hound
topaz widget
#

okay, cool. Good feedback. Work in progress / experimental design study.

#

Did you guys test the sudoku solver?

white spruce
#

my teacher is saying we got to make this tic tac toe game and he gave us the html and css file but he said we can't modify it

#

we just got to modify the javascript file

#

is this possible?

versed python
#

idk how to make my own sudoku so i didn't

#

@white spruce sure it is

topaz widget
white spruce
#

@versed python what would I have to do, he say we can't touch the index file

topaz widget
versed python
#

use Javascript then

white spruce
#

we just got to write the js

#

so I can write a function in js and also call it in js?

#

no html tags required?

topaz widget
#

@white spruce I assume the stuff he gave you will do what you need it to do.

versed python
#

Does the html your teacher gave you also include the tic tac toe board?

white spruce
#

yes Ignis

#

how we write the code here again

#

i'll show the code

#

what do I write before I place the code

#

is it ''' code?

versed python
#

!code

lavish prismBOT
#

Discord has support for Markdown, which allows you to post code with full syntax highlighting. Please use these whenever you paste code, as this helps improve the legibility and makes it easier for us to help you.

To do this, use the following method:

```python
print('Hello world!')
```

Note:
β€’ These are backticks, not quotes. Backticks can usually be found on the tilde key.
β€’ You can also use py as the language instead of python
β€’ The language must be on the first line next to the backticks with no space between them

This will result in the following:

print('Hello world!')
white spruce
#
<html lang="en">
  <head>
    <meta charset="UTF-8" />
    <meta name="viewport" content="width=device-width, initial-scale=1.0" />
    <meta http-equiv="X-UA-Compatible" content="ie=edge" />
    <title>INFO2180 - Tic-Tac-Toe</title>
    <link rel="stylesheet" href="tic-tac-toe.css" />
    <script src="tic-tac-toe.js"></script>
  </head>
  <body>
    <h1>Tic <span>-Tac-</span> Toe</h1>
    <div id="game">
      <div id="status">Move your mouse over a square and click to play an X or an O.</div>
      <div id="board">
        <div></div>
        <div></div>
        <div></div>
        <div></div>
        <div></div>
        <div></div>
        <div></div>
        <div></div>
        <div></div>
      </div>
      <div class="controls">
        <button class="btn">New Game</button>
      </div>
    </div>
  </body>
</html>
#

so he gave that for html

#

and he gave us the css

#

now he want for us to write the js to make this work

#

and we can't touch this html file to write any of our functions there

topaz widget
#

@white spruce Do you know how to use a script tag?

#

nevermind

versed python
#

i am not that good with js, but you'll probably need to target the div with #board, add an event listener to it and then determine which child divwas clicked. Once you have determined that, you can use Javascript to show a X or O inside as required.

white spruce
#

@topaz widget we literally started learning javascript yesterday lol

#

take time with me man

#

damn

topaz widget
#

So when is this due?

white spruce
#

on sunday

topaz widget
#

wtf?

#

You just started learning and they want you to make a game?

white spruce
#

yeah, university stuff

topaz widget
#

computer science?

stable kite
#

just use event listner for getting data of what user has inputed

white spruce
#

plus I got networking courses which is fking difficult a lot of other stuff

#

yeah

#

computer science

topaz widget
#

What year are you?

versed python
#

F

white spruce
#

2

topaz widget
#

Okay, maybe it's not that crazy. That's pretty aggressive, though.

white spruce
#

man I am trying my ass off lol

topaz widget
#

I don't know why they use divs for the board. I'd have used a table element.

white spruce
#

I be feeling loss sometimes lol, gonna go look at some js resources

topaz widget
#

Do the divs go left to right top to bottom or top to bottom left to right?

#

I assume the former.

#

@white spruce Do you know how to use document.querySelectorAll?

versed python
#

they started learning yesterday, i doubt it

white spruce
#

I saw that before

#

maybe if I look more into it

#

seems like I am fked with this one

versed python
#

yeah it's pretty easy though, and it'd solve your problem easily

#

so start with that

white spruce
#

anything else?

#

I am gonna stay up all night

#

and try to figure this out

#

anything else that would be good to use?

topaz widget
#

Okay, then you should use const cells = document.querySelectorAll('#board > div'); to get all the squares. @white spruce

#

That would be the first thing I did.

white spruce
#

okay @topaz widget thanks for the start man, really appreciate that

topaz widget
#

Then you can loop through that node list it returns.

#

Works a lot like an array but is a little different.

white spruce
#

oh I see

#

anything else you think I may need

topaz widget
#

lol I could write this whole program in an hour or less probably, but I probably shouldn't do your assignment for you.

white spruce
#

lol, yeah because you be knowing your stuff

#

I am on null

#

πŸ˜„

topaz widget
#

*undefined

#

πŸ˜‰

white spruce
#

lol

topaz widget
#

Add event listeners to each cell to work on a 'click' event.

#

Change the innerHTML attribute when clicked.

white spruce
#

you can just tell me some of the stuff I may need and I see what I can do, and maybe you can help me correct some of my BS that I will be writing πŸ˜„

topaz widget
#

I'm telling you the broad strokes right now.

white spruce
#

I think this is actually giving me the ideas though no cap

#

hope I will be able to put this together

topaz widget
#

when three cells in a row have the same character, stop the game and declare a winner.

white spruce
#

I see I see

#

gonna be using event listeners to stop as well right?

topaz widget
#

I don't see how you submit a move.

#

I was just looking at the html

#

I think you need more html elements.

white spruce
#

huh

versed python
#

i guess a click event for submit would be a good idea

topaz widget
#

no, it would fuck up.

white spruce
#

he said we can't touch the html code

#

bro

#

lol

topaz widget
#

Okay, then you need somewhere to click to designate that you've made a move otherwise this assignment is fxcked.

#

wait, nevermind

#

Okay, I see how you do it.

#

It just alternates between moves

white spruce
#

man let me open word and start writing down these tips

topaz widget
#

So you might want a global boolean variable then that you toggle with each click.

#

var isX = true;

#

when false place an "O"

white spruce
#

aite, gotcha so far

topaz widget
#

then you just need to toggle isX every click.

#

Part of me just wants to do your assignment for you lol but that would not be good, so sorry, I'm not going to do it.

white spruce
#

Kl, sounds like I can get somewhere so far πŸ™‚

topaz widget
#

I gave you most of the broad strokes.

white spruce
#
@import url('https://fonts.googleapis.com/css?family=Titan+One&display=swap');

:root{
  --black: #1a202c;
  --lightGrey: #edf2f7;
  --grey: #cbd5e0;
  --coral: #E57996;
  --lighterBlue: #32ABE1;
  --lightBlue: #3182ce;
  --green: #42B883;
  --defaultFontFamily: -apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,Noto Sans,sans-serif,Apple Color Emoji,Segoe UI Emoji,Segoe UI Symbol,Noto Color Emoji;
}

body {
  font-family: var(--defaultFontFamily);
  background: var(--lightGrey) url('tic-tac-toe-bg.png') repeat top left;
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  color: var(--black);
}

h1 {
  color: var(--lighterBlue);
  font-family: 'Titan One', var(--defaultFontFamily);
  font-size: 48px;
  text-shadow: 0 1px 3px rgba(0, 0, 0, 0.1);
}

h1 span {
  color: var(--coral);
}

#game {
  display: flex;
  flex-direction: column;
  align-items: center;
}
#

let me drop the css if you don't mind LOL

#
.controls {
  margin: 20px 0;
}

#board {
  display: grid;
  grid-template-columns: repeat(3, 150px);
  grid-gap: 20px;
}

#status {
  font-size: 24px;
  margin: 20px 0;
  text-align: center;
  background: white;
  max-width: 490px;
  padding: 1rem;
  box-sizing: border-box;
  border-top: 4px solid var(--lighterBlue);
  border-radius: 5px;
}

#status.you-won {
  color: var(--green);
  border-top: 4px solid var(--green);
  font-weight: bold;
}

#status.you-won::before {
  content: 'πŸŽ‰';
  display: inline-block;
  margin-right: 8px;
}

#status.you-won::after {
  content: 'πŸŽ‰';
  display: inline-block;
  margin-left: 8px;
}

.square {
  background: white;
  border: 1px solid var(--grey);
  box-shadow: 0 4px 6px -1px rgba(0, 0, 0, 0.1), 0 2px 4px -1px rgba(0, 0, 0, 0.06);
  border-radius: 10px;
  width: 150px;
  height: 150px;
  font-size: 96px;
  font-weight: bold;
  display: flex;
  justify-content: center;
  align-items: center;
}

.square.X {
  color: var(--lighterBlue);
}

.square.O {
  color: var(--coral);
}

.hover {
  background: var(--coral);
  border-color: var(--lighterBlue);
  cursor: pointer;
}

.hover.O {
  color: white;
}

.btn {
  color: white;
  background-color: var(--lighterBlue);
  border: 1px solid var(--lighterBlue);
  display: inline-block;
  font-weight: 400;
  text-align: center;
  vertical-align: middle;
  padding: .375rem .75rem;
  margin: 10px 0;
  font-size: 1rem;
  line-height: 1.5;
  border-radius: .25rem;
}

.btn:hover {
  background-color: var(--lightBlue);
  border: 1px solid var(--lightBlue);
  cursor: pointer;
}
#

all the help will be appreciated, you don't even got to show me lol

topaz widget
#

I'm going to put this in a document. hol up. I want to see what this looks like.

white spruce
#

okay

#

got to watch me some javascript videos now to see what's up

#

already found out how the query selector is gonna work πŸ˜„

topaz widget
#

Is there any more CSS?

#

@white spruce So are you supposed to style the board, too? Because when I open that html file with the css the board isn't shown.

white spruce
#

he said we can't touch the CSS or HTML so I don't think so

#

that's actually all of it

topaz widget
#

hm

white spruce
#

let me know if I'm fked πŸ˜„

topaz widget
#

When you open that in a web browser, do you see a tic-tac-toe board?

white spruce
#

nope, just new game

#

maybe we got to do something so after

topaz widget
#

Yeah, he needs to write css for the board then or you do.

white spruce
#

new game is selected

#

maybe the board would show up

topaz widget
#

Okay, so you have to modify the style property of those elements then.

#

That makes sense actually.

#

So you have to change the style properties of all those elements you got with the querySelectorAll

white spruce
#

okay let me write that down

#

this will also be done in js right?

topaz widget
#

yes

white spruce
#

man I am starting to feel like this is a lot

#

okay

#

thanks

#

for a beginner

#

dang, he being so difficult

topaz widget
#

You need to do that when new game is clicked.

white spruce
#

okay awesome, got that

topaz widget
#

This is kind of a tough assignment for someone who just started learning JavaScript.

#

I guess since you're second year, though, you already know a bit about programming, though.

white spruce
#

yeah we did some python and java basics

#

java was tough man

#

python was alright

topaz widget
#

What's the biggest thing you've built?

white spruce
#

well we did a software in java for customer invoices when a customer purchases an item

#

that's biggest

#

like a cash machine pretty much

#

and we ended up not having to complete it because of covid, so it was difficult to adjust

#

but I still got me an A πŸ˜„

topaz widget
#

nice

#

You mean like a cash register?

white spruce
#

yeah

topaz widget
#

ah, interesting.

white spruce
#

gave me a hard time though, we would go to lab though

#

for the seniors to help

#

but covid messed that up

topaz widget
#

Not that this is a good metric for project difficulty, but how many lines of code was it?

white spruce
#

let me see if I can find the project and check

#

so after adding up every class @topaz widget it was about 700 - 800 lines

topaz widget
#

Ah, okay, a decent-sized program.

#

That's enough to start getting kind of complex.

white spruce
#

oh really

#

the lecturer was slacking though, dude came to class and would be high

topaz widget
#

lol

white spruce
#

I had to be teaching myself and consulting stackoverflow

#

on the regular

topaz widget
#

it happens.

white spruce
#

dude leaves his laptop and projector 3/4 of the classes

#

lol

#

he a old man though

#

so I guess it happens

topaz widget
#

So, not to flex, but how many lines of JavaScript would you guess that web page I showed y'all has?

#

actually it has too many lines, so it's not a flex at all.

white spruce
#

can I see

#

I never got to see it

topaz widget
#

Just the home page, too. There's way more JS on the whole site.

acoustic oyster
#

idk, its a nice website though

white spruce
#

I see, you nice with it man

#

damn

topaz widget
#

thanks @acoustic oyster

acoustic oyster
#

that navbar animation is realllllly smooth

topaz widget
#

It's got over 1,000 lines of JS for that home page LMAO

acoustic oyster
#

lolol

#

what framework?

topaz widget
#

None.

acoustic oyster
#

my god sir

topaz widget
#

I wrote it all in Vanilla JS

#

LMAO

acoustic oyster
#

lolol, nice, dang. You are braver than I xD

topaz widget
#

Yeah, it was my first website with JS I wanted to learn so didn't use a framework.

#

I am using frameworks nowadays but still writing a lot of custom JS.

white spruce
#

dang !

acoustic oyster
#

I cant get over that navbar animation

topaz widget
#

Thanks, yeah, I thought that was pretty nice. The nav bar eats up A LOT of lines of JS.

white spruce
#

yo bro, it's mad smooth

topaz widget
#

Too many actually.

white spruce
#

I be scrolling up and down

#

looking at the bar

topaz widget
#

My JS skills have improved since I made that page, and I could probably take 200 lines out.

white spruce
#

lol

topaz widget
#

at least.

acoustic oyster
#

is that lightbox/carousel all vanilla? I want it xD LOL

topaz widget
#

Yeah.

#

It's got a couple little bugs, though.

#

I need to fix them.

white spruce
#

yow man throw me some resources, that will give me a good start for this assignment lol

#

because I am at undefined as you said

#

lol

versed python
#

It's a better idea to learn the js part for your website first though

#

Styling will come later, the core functionality is what matters more

white spruce
#

yeah

topaz widget
#

@white spruce You know you can actually see the contents of JavaScript files, right?

white spruce
#

yeah science

topaz widget
#

So if you like my website, you can just open the JS files.

white spruce
#

I went to the debugger

#

and check

topaz widget
#

I'm warning you, though.

white spruce
#

lol

topaz widget
#

The JavaScript is the work of an ambitious noob.

#

Meaning it is gonna be crazy to look at.

white spruce
#

at the end of the semester I should be up from noob

#

to maybe a beginner

topaz widget
#

The JavaScript on my site will probably make your head spin. That's an insult at me if anything, too, for writing kind of sloppy code.

white spruce
#

oh that was in your early stages?

#

?

topaz widget
#

Yeah.

white spruce
#

man that's nice

topaz widget
#

Like I said, I could write that a lot better now.

#

Here, you can see a newer project of mine, but it's not a responsive web page, meaning you need a viewport larger than 1200px to see it properly.

white spruce
#

I don't mind let me see

topaz widget
#

It's an experimental social network design.

white spruce
#

YOW

#

I like it lol

topaz widget
#

Thanks.

#

The JavaScript is cleaner on that page, but probably still a bit messy.

#

I also used Vue a little bit.

white spruce
#

you super nice with JS man

#

how long ago

#

was that?

topaz widget
#

a couple months ago

#

I have a newer page, too, but it's a little more perfunctory and has some sensitive information, so I'm not going to show that, sorry πŸ˜•

white spruce
#

that's fine, gonna tackle this assignment

#

any more tips

topaz widget
#

If the sensitive information was blocked I would show you, but it's not as ambitious with the design.

white spruce
#

we were here - Okay, so you have to modify the style property of those elements then.

topaz widget
#

No more tips tonight. I've gotta go to bed soon.

white spruce
#

I am really gonna just be searching for the stuff you told me

topaz widget
#

You can examine those pages, though.

white spruce
#

and try piecing them together to get this game to work

#

starting with querySelector

topaz widget
#

You've got almost a week, you've still got a little time.

white spruce
#

lol, not 1 week to work on this

#

I got 3 more other courses

#

I find networking and discrete mathematics to be harder than this

#

so I am trying to do this in 2 days maximum @topaz widget

#

is that possible @topaz widget ?

topaz widget
#

With your skill level that would be ambitious @white spruce

#

Since you know hardly any JavaScript.

white spruce
#

just started a little course I saw, about to spend all night doing it

topaz widget
#

Well, good luck. I'm off to bed by the way, but I'm on here every few days or so, sometimes multiple in a row.

white spruce
#

okay man, I'll be back later to ask questions or problems I face

wanton ridge
#

this is my code where i get the html file not the css

#

i still get the same

#

i change it

#

but still the same

#

ahh i changed my port number and it works

acoustic oyster
#

hmmm, the only thing I can think is that your router is someone pointing to your css? im not sure

proven orchid
#

hi there

#

anyone familiar with heroku and flask?

#

???

cunning falcon
#
driver = selenium.webdriver.Chrome(PATH)
driver.get(WEBSITE) 

in this the bot opens the chrome brower and goes the the website, but is there any method for bot to go to the website in its own system and not open my browser?

versed python
cunning falcon
#

ok

#

can i use selenium with helium?

#

both together

versed python
#

Yeah that's how its meant to be used

cunning falcon
#
async def youtube(ctx, *, vid_name):
    driver = selenium.webdriver.Chrome("C:\\Program Files (x86)\\chromedriver.exe")
    driver.get("https://youtube.com/")
    search_bar = driver.find_element_by_id("search")
    search_bar.send_keys(vid_name)
    search_bar.send_keys(Keys.RETURN)
    print(driver.current_url)``` in this i get error as element not interactable
#

im trying to send keys to yt search bar

jagged lark
#

It is against youtube ToS, we can’t help you with that

cunning falcon
#

no

#

where its written?

jagged lark
#

We have some details here

#

!ytdl

lavish prismBOT
#

Per PyDis' Rule 5, we are unable to assist with questions related to youtube-dl, commonly used by Discord bots to stream audio, as its use violates YouTube's Terms of Service.

For reference, this usage is covered by the following clauses in YouTube's TOS, as of 2019-07-22:

The following restrictions apply to your use of the Service. You are not allowed to:  

1. access, reproduce, download, distribute, transmit, broadcast, display, sell, license, alter, modify or otherwise use any part of the Service or any Content except: (a) as specifically permitted by the Service;  (b) with prior written permission from YouTube and, if applicable, the respective rights holders; or (c) as permitted by applicable law;  

3. access the Service using any automated means (such as robots, botnets or scrapers) except: (a) in the case of public search engines, in accordance with YouTube’s robots.txt file; (b) with YouTube’s prior written permission; or (c) as permitted by applicable law;  

9. use the Service to view or listen to Content other than for personal, non-commercial use (for example, you may not publicly screen videos or stream music from the Service)
cunning falcon
#

thats youtube_dl

#

im talking bout accessing an elemenr

#

element*

versed python
#

I don't know how to read robots.txt files, but this disallows most of them

cunning falcon
#

huh

jagged lark
#

That’s the same idea, even if you aren’t using ytdl

versed python
#

Most well established sites have a robots.txt which state whether the site can be automated or not. This looks disallowed to me.

cunning falcon
#

so i cant get information through yt?

jagged lark
#

Nope

cunning falcon
#

oh

versed python
#

you have to use thier api, if they have one

#

I am pretty sure they have one

cunning falcon
#

nope

#

@versed python

versed python
#

Oh well

cunning falcon
#

my code ruined ;-;

sullen basalt
#

Not sure if what you are looking for is in their API

marble carbon
#

anyone familiar with heroku and flask?
@proven orchid sure

proven orchid
#

how do i host my rest api there duh?

#

@marble carbon

marble carbon
#

Ah

#

hold up

#

here

proven orchid
#

didnt work

#

what i want to know is do i have to mention only the app or the api, cors and app together in the procfile

#

while using the rest api

marble carbon
#

ohh hmm

#

are api and app different?

#

and what does cors have to do

#

show ur procfile

#

@proven orchid

proven orchid
#

cuz im fetching request from the api i made and cors block it until i allow origin

marble carbon
#

show procfile

dense bolt
#

One message removed from a suspended account.

marble carbon
#

ofc

dense bolt
#

One message removed from a suspended account.

#

One message removed from a suspended account.

#

One message removed from a suspended account.

#

One message removed from a suspended account.

#

One message removed from a suspended account.

paper helm
pseudo echo
#

Hey good morning! I am trying to pass a Python list to a Jinja template via Flask's render_template and having all sorts of issues. I want to use the list for validation on the client-side, before the submit/post, but it keeps coming across as a literal string of '<Response n bytes [200 OK>'

I've tried jsonify, json.dumps, tosjon, JSON.parse, still having no luck, any tips?

marble carbon
#

ah don't really have experience with channels tbh

#

but why are u confused with saving the messages

uneven radish
#

Hi All,

Django related question.
I am making a call to an API, fetching the data and displaying it on the webpage.
Should I directly display it or fill it in database and display from my model?

What is more optimum way of doing this?

marble carbon
#

it depends

#

if you're calling quite frequently

#

and the data doesnt change, then probably yes

#

also look for API policies

past cipher
#

how to pass through a looped flask variable to JS like:

{% for item in register.account_type %}
                        <label class="btn btn-secondary active">
                        {{item(onclick="toggleRadioChecked('item')")}} {{item.label}}
                        </label>
                    {% endfor %}
#

I have tried toggleRadioChecked('{{item}}'), toggleRadioChecked('item) and toggleRadioChecked('item')

cold socket
#

Anyone work with the Google Maps API before?

#

I want to determine if there is a way to get which side of the road I’m on

weary dragon
#

if i have an error like this The list can have maximum 100 elements. what code should i return for the page?

worn basin
#

@cold socket Im currently working with the Google Maps API but I havent come across anything that would allow you to determine that. Ive only been working with it for a week though so you may want to take a look yourself

#

I have a Django question, when it comes to simple custom user models is there any downsides to using AbstractUser over AbstractBaseUser? I understand AbstractBaseUser allows you more control but Im wondering if it would still be recommended for a simple user model

cold socket
#

@worn basin Thank you I appreciate it!

versed python
#

I think the django docs say that unless you know what you are doing you shouldn't need to mess with AbstractBaseUser @worn basin

worn basin
#

Im more concerned about any longterm issues I may have

versed python
#

looks like it's a tradeoff between short term ease and long-term ease

worn basin
#

Hmm, I see. Thank you for the link!

lethal orbit
#

I want to determine if there is a way to get which side of the road I’m on
@cold socket Note that GPS (and most location services) mymay not always be accurate enough to determine that, so I wouldn't really rely on it even if you do find a way. (Lol, ok, I shall double-check my spelling more).

marble carbon
#

yep

#

rely*

foggy fable
#

*may

plush leaf
#

Hi can someone help me with a Bootstrap 4 issue, this row has all the same size columns and cards, but the image column is never equal height to the others

#

Is there a way to fix this?

viscid roost
#

Make margin-bottom

#

That's inbuilt

#

and check if image size is affecting the widget

plush leaf
#

I tried margin-bottom for the card, it just reduces the image in size but the card size stays the same

swift sky
#

do you guys use blueprints often

#

i have an app that I've been working on and it's getting a bit unmanagable

#

i think i need to look at blueprints

lethal orbit
#

@lethal orbit not entirely true, if the signal is accurate, you can get on average 5m accuracy and that's enough for that task
@glacial night that depends on many factors. First of all, not all streets even are 5 metres wide lol. Second of all, users may not even have precise location turned on. Saying that location services "may not always be accurate enough" is definitely 100% true.

#

Also, in cities, with buildings and trees, you are even less likely to have 5m accuracy.

topaz widget
#

Does anyone know if I want to gitignore a directory if I need the relative path or just the folder name?

lethal orbit
#

so its enough in my opinion
Depends. For US suburb? Sure. For the old part of town of any European or North African city (or probably Asian)? Hell nah.

#

Does anyone know if I want to gitignore a directory if I need the relative path or just the folder name?
@topaz widget I think git questions are more suited for #tools-and-devops, but I generally use the whole path. If it is something that repeats (e.g. those annoying __pycache__ directories, and you want to ignore them all, then you can add **/__pycache__/

topaz widget
#

by whole path do you mean absolute path or path to the directory from the repo?

#

(.git folder)

lethal orbit
#

You can also add a .gitignore inside a folder (e.g. /folder/subfolder/.gitignore with a relative path (foo instead of /folder/subfolder/foo)

#

Sorry, the path relative to the git root.

topaz widget
#

Ah, okay. I might do that then.

#

Thanks.

lethal orbit
#

@lethal orbit lol its not LTE, its gps, the accuracy is the same, or maybe i dont know something
@glacial night they are still radio waves, so they are affected by things like walls and trees.

topaz widget
#

So does the ** mean recursively then?

#

in **/__pycache__/

lethal orbit
#

Means "match in all subfolders"

topaz widget
#

gotcha, thanks, yeah that's what I meant.

lethal orbit
#

The point is, I don't know where you are from, but an 8 lane-avenue with a mall strip in Florida is wide, and unobstructed enough that you could definitely determine what side of the street you are on.

#

Go to the gothic quarter in Barcelona, and you have 2 metre-wide streets, with 4-5 story buildings....

#

Go to a medina in a North African city, and it's probably not wide enough for a car lol

#

Even in Paris, most roads are much narrower than in NYC.

#

Well, it is if there are more buildings obstructing the signal.

topaz widget
#

@lethal orbit Do you use git a lot?

lethal orbit
#

Yup

topaz widget
#

Can I ask what you generally use it for? (project-wise)

#

type of project

lethal orbit
#

Everything. Mostly web dev, some networking apps, some GUI, some games....

topaz widget
#

How often would you say you commit new changes to a repo for a given project?

lethal orbit
#

Data processing apps, too.

topaz widget
#

Every time you change something?

#

Or just major updates?

lethal orbit
#

Basically every time I make a change that is complete...

#

Not necessarily major upates....

topaz widget
#

Okay, the reason I'm asking is because I don't often find reason to use git.

lethal orbit
#

It can be a single function.

viscid roost
#

Uff.... Finally completed my flutter app with DJango rest framework

topaz widget
#

Like, I could be using git wrong, but the only reason in my mind currently is if I want to freeze the project in a current state.

#

which doesn't happen that often.

viscid roost
#

bro use a different branch

lethal orbit
#

No, the reason to use git is to keep track of changes.

viscid roost
#

if you want to do some experiments

#

yeah

#

Its a time machin

topaz widget
#

@glacial night That sounds like a case for backups!

viscid roost
#

run git log

#

copy the hash

topaz widget
#

@viscid roost Yeah, that's my impression, which is why I'm using it now. I have gotten to a "stopping place" on a project.

viscid roost
#

then run git reset --hard <hash> that's it

topaz widget
#

I use it pretty infrequently, but maybe I should be using it more.

viscid roost
#

why

topaz widget
#

why what?

viscid roost
#

I use it almost every time

#

because I do frequent experiments

topaz widget
#

My concern is having too many commits that they become essentially meaningless.

viscid roost
#

Yeah.... I am not telling about commits

#

frequent is very bad practice

#

*commits

topaz widget
#

I just want major updates to be committed.

viscid roost
#

So use two different branches

#

for small commits

topaz widget
#

Yeah, good point.

viscid roost
#

and master for major updates

#

I never directly commit to master branch

#

I pull the request from the another branch

#

after checking it carefully

lethal orbit
#

@topaz widget Basically, my (web dev) workflow is like....```

  • create a new repo
  • git clone repo
  • add basic docker-compose / docker files; commit
  • initialize django project; clean up settings.py; commit
  • add basic front-end; commit
  • add a model to django; make migrations; commit
  • add a component to my vue front-end; commit
  • repeat with new features
#

And yes, use feature branches.

viscid roost
#

Yeah mine is little different

#

I have like 4 - 5 branches

topaz widget
#

Wow that is a lot of commits.

viscid roost
#

master branch is very crucial

#

so I don't commit frequently in master branch

lethal orbit
#

Wow that is a lot of commits.
Commits are good.

topaz widget
#

Is that master branch @lethal orbit ?

viscid roost
#

Never.... if you are doing it frequently its very confusing

lethal orbit
#

I usually make a branch for each feature.

topaz widget
#

Like a separate branch for each feature?

#

gotcha. see that.

lethal orbit
#

Then I rebase master on top of that when it's complete.

viscid roost
#

Then he will have 80 - 90 branches

topaz widget
#

lol

lethal orbit
#

Though most people don't know what is good for them and merge rather than rebasing.

viscid roost
#

Authentication feature, like feature, share feature and the list go on and on

topaz widget
#

I guess I never saw the point of creating a repo until a project was in some kind of 'finished' state.

marble carbon
#

no you delete feature branch after merge

lethal orbit
#

Then he will have 80 - 90 branches
That's why you work on a feature, merge (or rebase) and delete it πŸ™‚

marble carbon
#

yep

topaz widget
#

Gotcha.

viscid roost
#

Bro.... I start project with a github repo

#

then contantly commit

marble carbon
#

u mean git

viscid roost
#

git

#

yeah

#

gh repo create

#

github has offical cli now

topaz widget
#

I don't really use github that much.

viscid roost
#

so I don't have to go to the website

marble carbon
#

oh github cli, I didn't use yet, is it good

viscid roost
#

github is amazing

topaz widget
#

I have a github account, but I don't see the point of putting code up there.

viscid roost
#

see mine

lethal orbit
#

I create a repo on GitLab before I write any code locally.

marble carbon
#

wow xD

#

14, cheers man

#

kinda too much, putting phone number on github tbh

viscid roost
#

Yeah that's only

#

whatsapp

lethal orbit
#

I have a github account, but I don't see the point of putting code up there.
@topaz widget 1) backups of your code if your computer melts down / is stolen. 2) you can use it for CI/CD.

viscid roost
#

not phone number

#

means calling

marble carbon
#

hmm ok

viscid roost
#

YEah CI/CD is great

lethal orbit
#

Push code to gitlab, it runs tests, builds my docker containers, and I can click one button to deploy to production.

viscid roost
#

I think I have done mistake by giving phone number

#

let me remove it

topaz widget
#

Honestly I would get rid of your headshot, too.

#

I think an avatar is a safer option.

#

When did you start coding @viscid roost ?

marble carbon
#

right 🀨

topaz widget
#

14 is very young to be as deep into it as you are.

marble carbon
#

mhm even im learning the ropes with CI/CD

topaz widget
#

Is it easy to get into docker?

lethal orbit
#

Is it easy to get into docker?
no yes πŸ˜…

#

Ok, it has a bit of a learning curve

marble carbon
#

damn that YouTube channel >-<

lethal orbit
#

But not that bad.

marble carbon
#

you got loads of videos

#

gg

topaz widget
#

Docker seems desirable to employers from what I've seen.

viscid roost
#

I started coding when I was in 5th std

marble carbon
#

two githubs?

lethal orbit
#

Docker seems desirable to employers from what I've seen.
@topaz widget it is. So is git xD

viscid roost
#

Yeah

topaz widget
#

So you started coding when you were 9 or 10??? @viscid roost

viscid roost
#

one for real projects

#

and other for learing

#

learning

marble carbon
#

which one is for real ones?

viscid roost
#

imdigtalashish

#

username

#

dspashish ashish is just for learning

#

actually there are 200 repos in dspashish

#

all are private

#

only some are public

devout coral
#

Anyone here used django-notifications? I am trying to figure out what the fields on the model are called

marble carbon
#

maybe I did

#

lemme check real quick

#

ok yes I did

gray lance
#

New to CI/CD stuff and saw you guys talking about it here, do you guys have any recommended resources? (CI/CD for Django)

marble carbon
#

what's your question

#

Docker would be a good start ig?

gray lance
#

What would you recommend for a rather small project?

#

Saw someone say there's a learning curve to it lmao

#

This is meant to be a small school project

marble carbon
#

I mean docker would allow to install your project to any system p fast, just that you'll have to install Docker on it first

gray lance
#

Alright thanks! I'll look into it

devout coral
#

@marble carbon Thanks

#

Exactly what I was looking for

marble carbon
#

πŸ‘Œ

viscid roost
#

Django is very good

#

now async funationalities is superb

#

I have done removing my creds

marble carbon
#

gg

#

do you know GraphQL

viscid roost
#

Yeah

#

but Like rest more

#

It's just a choice.... GraphQL is good though

marble carbon
#

nice

viscid roost
#

but it also

marble carbon
#

oh btw neat youtube channel

viscid roost
#

product a JSON

marble carbon
#

πŸ˜„

viscid roost
#

Thank you so much for that

#

I started YT for some fun

#

And sharing my knowlegde

marble carbon
#

wait

#

u do android development too

viscid roost
#

ya

marble carbon
#

damn

#

that is cool

viscid roost
#

Thank you

#

I just gave the AAD exam

marble carbon
#

ah nice

viscid roost
#

Thanks

#

wait whats that

#

means ot1 etc

marble carbon
#

offtopic channel

viscid roost
#

okay

versed python
#

!ot @viscid roost

lavish prismBOT
devout coral
#

Question how do would I get a Query set based on a group.

#

I am using Django

versed python
#

Like you would any other model?

#

Group.objects.filter(my_filter)

devout coral
#

When I get tired or hungry I cannot think lmao

versed python
#

import antigravity

devout coral
#

Hello, I just finished implementing django-notifications project into my project and set up emailing for it. I just made a signal that anytime a new notification is created it sends the email using smtplib. The only issue is it will be sending emails to about 12-20 people so once I trigger the notification my page just continues to load until all those emails were sent. What would be a good approach to have these emails be sent in the background?

lethal orbit
#

Celery

#

Takes a bit to set up, but it's basically the de facto background task runner for Django.

marble carbon
#

yeah signals are not asynchronous

#

I mean they are synchronous

devout coral
#

Lol so set up celery

marble carbon
#

mhmm

#

signals run with every ORM operation synchronously

devout coral
#

Second question, if I have a variable with the string of a field name. What would be the best approach to get that field value.

#

for example i have field_name = name
how would I get model.name

marble carbon
#

exact code

#

you cant have spaces

devout coral
#

?

#

LEt me get you my code one sec

marble carbon
#

ye

lethal orbit
#

getattr(model, name)

marble carbon
#

ye but field names can't have spaces

#

🀨

devout coral
#

I know

#

I did not say they did

#

lol

marble carbon
#

string for a field name ah

devout coral
#

@lethal orbit Where is that function?

marble carbon
#

std lib

#

no import

#

dw

lethal orbit
#

It's a built-in, yeah.

#

Same as doing model.__getattribute__(name)

devout coral
#

Thanks, worked like a charm

mystic veldt
#

How should templates be organized in django directories? cant seem to extend my template (im really new)

topaz widget
#

@mystic veldt Show your directory structure

#

Do you have an app created?

lean rapids
#

Any flask users in here?
Having trouble with my admin page.
Trying to secure it, so only the username "admin" gets access to the admin panel. But it doesnt work.
searched up a ton of tutorials / documents, but when i Do the stuff they tell me to, it doesnt work. the username "admin" is just a regular user in my coding :/

native tide
#

When you guys work with Django do you guys use React much?

tawdry magnet
#

hows ur authenticatin setup then

lean rapids
#
class AdminView(ModelView):
    
    def __init__(self, *args, **kwargs):
        super().__init__(*args, **kwargs)
        self.static_folder = 'static'

    def is_accessible(self):
        return session.get('User') == 'Admin'

    def inaccessible_callback(self, name, **kwargs):
        if not self.is_accessible():
            return redirect(url_for('login', next=request.url))
tawdry magnet
#

flask doesnt have stuff like this by default. u mustve setup some system for auth

#

is that some sort of external lib

lean rapids
#
admin = Admin(app, name='Dashboard', index_view=AdminView(User, db.session, url='/admin', endpoint='admin'))
admin.add_view(AdminView(User, db.session))
admin.add_view(AdminView(Transactions, db.session))
#

this is my admin.py(first one) and second is my init

lethal orbit
#

When you guys work with Django do you guys use React much?
@native tide I think react is horrible garbage soup, but I use it with Vue a lot.

#

I have used DRF for REST, but mostly use Ariadne for GraphQL nowadays.

#

Should be fairly similar, tbh.

native tide
#

I've just been learning Django and React recently but I don't necessarily think they're the best fit (maybe?) so I was looking around for some other frameworks

#

To use with React

lethal orbit
#

Django is great. I'd just recommend splitting it into two.

lean rapids
#

@tawdry magnet yes, found several tutorials / documentation saying this is the way you set up auth on the admin page

lethal orbit
#

Don't try to use react and templates...

#

Just use Django as an API

native tide
#

Yeah I tried to use react w/ templates and that was horrible

#

So I'm looking into Django and APIs

#

but I don't really understand it.

tawdry magnet
#

ide reccoment doing it from scratch

#

starting with a database

native tide
#

For example, how to sort out the routes in Django and linking that with React

tawdry magnet
#

flask is desighned to me minimal. so everything can be done yourself. thats one of the things i dont like about django

#

random external libs that do entire things like authentication just fudge it up and get in the way

lethal orbit
#

For example, how to sort out the routes in Django and linking that with React
Best tip I can give you (for a new website) - don't bother with routes, and go with GraphQL instead of REST.

native tide
#

Yes I've used Flask before I liked it but there's not as many jobs in the UK for Flask compared to Django so I chose to hop onto the Django boat

tawdry magnet
#

i was talking to revooo

native tide
#

Oh lmao

lethal orbit
#

But really, it should be similar in both cases.

lean rapids
#

well, notsure how to do it without these libs tho :/

native tide
#

How would GraphQL go about with routing though? @lethal orbit or DRF for that matter

tawdry magnet
#

use cookies as tokens

#

have the front end set that up

lethal orbit
#

Just route either /api/... (e.g. domain/api/foo) or /graphql to Django

tawdry magnet
#

post requests for login/register

#

stuff like that

lethal orbit
#

GraphQL has a single endpoint, then you define a schema

lean rapids
#

So i would have to make another template?

#

and then make everything in there?

tawdry magnet
#

i have no idea im talking in general

lean rapids
#

ohh

native tide
#

Ok I really need to do that but I keep procrastinating lmao

lethal orbit
#

Do you have a website you are working on?

native tide
#

Well, I tried to do it with Django + React in a template. That didn't work, that was today. So I'm starting a new project

#

So not at the moment

lethal orbit
#

kk

#

Well, you have 2 basic options, rest or graphql. If you go with rest, you need to define your models, your apps, and your endpoints.

#

So you can have /api/blog/posts to get all blog posts, for example.

#

/api/links, /api/projects, etc.

#

If you go with graphql, all requests go to the same endpoint /graphql ... and you need to send the appropriate queries

#

What is nice with graphql is you can nest queries.

#
query {
  blogPosts {
    title
    date
    author {
      name
    }
    content
  }
}```
#

And define exactly what you want to get

#

So you don't have underfetching / overfetching of data

#

As to how it goes with routing.... you need to define a schema (e.g. blogPosts query), and define resolvers.

#

My recommendation would be to look at the ariadne website - it's great with Django - and play around with it. If you have specific questions, feel free to ping me tomorrow.... i gotta go to bed.

#

By which I mean I will probably spend hours online on the laptop anyways lol

native tide
#

Ok, thanks so much! @lethal orbit I'm gonna read around, definitely will learn DRF for future plans at least. Night night πŸ™‚

#

I'll save your message for a cheeky read later πŸ˜‰

lethal orbit
#

Unless you know you want to work with DRF, try Ariadne first πŸ˜„

#

It's good to know both - a lot of REST projects already out there....

#

But if you start something new, GraphQL has some many benefits.

marble carbon
#

πŸ˜†

lethal orbit
#

πŸ˜†
@marble carbon are you laughing at me preaching the gospel of ariadne again? πŸ™ƒ

marble carbon
#

yep

#

πŸ˜‚

#

everytime someone mentions API, i have pretty much seen u advocating GraphQL to them everytime, kinda like a ritual at this point

winter spindle
#

hey

#

i have made an only html and css website

#

can anyone review it for me pls ..... i am a complete beginner !!

marble carbon
#

sure, post

winter spindle
lethal orbit
#

everytime someone mentions API, i have pretty much seen u advocating GraphQL to them everytime, kinda like a ritual at this point
Having worked with both, it is a lot nicer, tbh :p

winter spindle
#

@marble carbon

marble carbon
#

uh

#

how do I tell from the screenshot

#

all I can say is it looks good

lethal orbit
#

that is a perfect screenshot. 5/7

winter spindle
#

it has the same color hovers on buttons and navbar links

marble carbon
#

in case you only wanted feedback in terms of design, then yes looking good

winter spindle
#

yess i wanted to knw that ! thanks tho πŸ˜„

topaz widget
#

@winter spindle Is that your website?

winter spindle
#

yess only a single page html and css

topaz widget
#

can you share link?

winter spindle
#

no no i havent hosted it or anything

topaz widget
#

That looks nice

winter spindle
#

just a simple html and css

#

ohh thanks mahn !

topaz widget
#

oh, ok

#

Do those links at the top link to different sections?

#

(currently)

winter spindle
#

no no i havent made all tht stuff

topaz widget
#

Is this a bootstrap template?

winter spindle
#

just a design to practice

#

no no nothing

#

only html and css

topaz widget
#

You made from scratch?

winter spindle
#

yess

topaz widget
#

Nice

winter spindle
#

i suppose you too have started web dev ?

topaz widget
winter spindle
#

ohh yea sure

marble carbon
#

hmm

#

is it fine if I suggest a few changes? @topaz widget

topaz widget
#

Sure

#

I'm looking to update my home page now.

marble carbon
#

you can try a different font maybe, the one u have not the best in terms of pleasing to the eyes

topaz widget
#

I made that one months ago

marble carbon
#

there's Lato, which u could try

topaz widget
#

Which font? I have like 3 or 4.

marble carbon
#

hmm lol

#

well then

#

you got another tip incoming

#

use a single font throughout, to keep design uniform

topaz widget
#

@marble carbon I disagree on the last point.

marble carbon
#

why?

topaz widget
#

https://fonts.googleapis.com/css?family=Muli|Varela|Red+Hat+Display|Varela+Round|Raleway|Quicksand&display=swap

#

Those are the fonts I use

marble carbon
#

hm okay how about

#

u stick to 2 fonts at max?

devout coral
#

Time to learn how to use celery.

topaz widget
#

Maybe. The thing is: using different fonts for different features can distinguish them from one another.

#

And it can establish hierarchy.

marble carbon
#

hmm well there are more ways to distinguish stuff, color, font weight, size and all

topaz widget
#

But yes, if using different fonts, they must be selected carefully.

marble carbon
#

There's a website that suggests pair of fonts that go well together

#

lemme see if I can find it

topaz widget
#

like title text and paragraph text is almost always different for example.

marble carbon
topaz widget
#

Hm, okay, I'll check it out.

marble carbon
#

okay yes nvm found the other one too

#

another thing, when the lightbox is open, I can still scroll x)

topaz widget
#

I know you can still scroll. I decided it didn't matter.

marble carbon
#

okay there's not much I can tell you in terms of design that would make sense in the form of text

#

though there's this youtube I follow that explains UI/UX stuff

#

you can checkout his videos about portfolios on this link

topaz widget
#

Okay, I'll see what he has to say.

devout coral
#

@marble carbon Wanna give me some feedback on what I have been working on?

marble carbon
#

hm?

#

sure

#

welcome to today's video where i'll be giving feedbacks on the projects you guys submitted to me last week

#

πŸ˜†

devout coral
#

ignore the messed up certificate

#

username: mickey.mouse
password: Testing321

All the data is dummy data

marble carbon
#

ye, dont think u can add certificates to IPs without errors

devout coral
#

Yeah I had to get a different IP for the server and have not moved the domain to it.

winter spindle
#

@topaz widget i would also suggest one thing

#

its like nothing too big

topaz widget
#

sure

winter spindle
#

just capitalize the first letter of words in the navbar

topaz widget
#

go for it

marble carbon
#

@devout coral do you want feedback in terms of design?

topaz widget
#

Okay, good feedback. I grappled with that one. Decided to go for the apple lowercase aesthetic.

winter spindle
#

@topaz widget nvm πŸ˜‚

topaz widget
#

I also did all uppercase but it just looked too intense.

devout coral
#

@marble carbon Sure, just feedback in general really

marble carbon
#

hmm, using bootstrap?

devout coral
#

Can you tell lol

winter spindle
#

@topaz widget also you can do a better hover on those navbar links instead of just an underline

marble carbon
#

not really, if i am being honest navbar is bit messed i think

winter spindle
#

yeah

topaz widget
#

What do you think, like change the color, too? @winter spindle

winter spindle
#

yeah u can

topaz widget
#

What about the navbar do you guys not like?

devout coral
#

@marble carbon Alright, what is broken about it ? I cannot really tell

winter spindle
#

but the current one also feels good

devout coral
#

Oh also, it is not responsive. At all

winter spindle
#

like the styling is not done properly ig

marble carbon
#

What about the navbar do you guys not like?
@topaz widget i was talking about snowball's website

topaz widget
#

It is most definitely responsive if we're talking about my website.

marble carbon
#

yours was fine

topaz widget
#

Oh ok

winter spindle
#

you can just capitalize the first letters

topaz widget
#

lol

winter spindle
#

and do some nice hover

#

that's it

topaz widget
#

Okay, well there's a lot I could do on hover, what were you thinking?

winter spindle
#

and you can ignore my suggestions cuz i am just 10 to 15 days into web dev πŸ˜‚

marble carbon
#

@devout coral is it fine if I send screenshots for reference to my comment?

devout coral
#

Yes

topaz widget
#

You being new to web dev doesn't mean you have poor design sense.

devout coral
#

I like feedback, good or bad.

topaz widget
#

Doesn't necessarily mean you have good design sense either though.

winter spindle
#

you know that hover that underlines the bottom part

marble carbon
topaz widget
#

But I'm happy to take your feedback.

marble carbon
#

ok this section needs little rework

winter spindle
#

simultaneously 2 discussions on 2 websites πŸ˜‚

devout coral
#

@marble carbon Yeah.... I just was not sure how. I had something different before but it was horrific.

marble carbon
#

so i checked, ur using bootstrap

topaz widget
#

Yes, cross-threads are difficult to follow.

#

lol

marble carbon
#

hmm I can take this to DM if u want

#

?

devout coral
#

Go ahead and click on assign attendance point. So it can populate and you can see what I am doing.

winter spindle
#

no no you guys carry on !

marble carbon
#

okay

topaz widget
#

Just ping who you're addressing and it will be all clear.

marble carbon
#

okk

devout coral
#

@marble carbon Not saying it does not need some work I am just not sure what to do....

topaz widget
#

@winter spindle What would you like to see those titles on the nav do on hover?

winter spindle
#

yea

marble carbon
#

@devout coral so instead of reinventing the card component yourself, how about u use the bootstrap component for card instead : https://getbootstrap.com/docs/4.0/components/card/

devout coral
#

Bro....

marble carbon
#

@marble carbon Not saying it does not need some work I am just not sure what to do....
@devout coral You do not have access to this page

devout coral
#

I did not even know that existed lmao

#

@marble carbon Let me fix that

#

@marble carbon Try now

marble carbon
#

haha now i have to fill it

devout coral
#

Also, are you getting a server error when accessing "Employee Information"

#

Yeah just put random stuff.

marble carbon
#

ah ye

#

server error

devout coral
#

weird...

#

Granted that is not the latest version but it should not be doing that.

marble carbon
#

it's fine i can review other stuff

#

so

#

this section, you probably need it on every tab, let's say when someone clicks on assign attendance point, you do not want it to disappear

devout coral
#

Oh...

#

smart.

#

Did not even think of that

marble carbon
#

there's two ways to do this

#

upto you

#

either use a vertical nav

#

or a subnav bar

#

dont copy this, since this isnt bootstrap

devout coral
#

Yeah, I think the vertical nav might be good.

marble carbon
#

or just go for the classic instead

#

fixed sidebar on left