• Breaking News

    Thursday, March 14, 2019

    laxxx.js - Simple & light weight (2kb minified & zipped) vanilla javascript plugin to create beautiful animations when you scroll web developers

    laxxx.js - Simple & light weight (2kb minified & zipped) vanilla javascript plugin to create beautiful animations when you scroll web developers


    laxxx.js - Simple & light weight (2kb minified & zipped) vanilla javascript plugin to create beautiful animations when you scroll

    Posted: 14 Mar 2019 12:31 PM PDT

    How is this website performing this scroll effect?

    Posted: 13 Mar 2019 10:13 PM PDT

    monokai.nl has probably the coolest scroll effect I've seen on a website and seems to all be text-based. What are they using to achieve this?

    submitted by /u/summertimeacid
    [link] [comments]

    How ING.nl (Dutch bank) uses Web Components

    Posted: 14 Mar 2019 01:23 PM PDT

    When "Zoë" !== "Zoë". Or why you need to normalize Unicode strings

    Posted: 14 Mar 2019 04:49 AM PDT

    Is React Native a favorable solution for building small apps with a team of only web developers?

    Posted: 14 Mar 2019 02:00 PM PDT

    Hi. I'm on a team on devs and we are looking to create a small mobile app that would almost be entirely read-only. We want to use a framework since we're all knowledgable in the web ecosystem.

    I see that React Native is still in beta, has anyone here shipped production apps with it? Would love to hear benefits and drawbacks.

    submitted by /u/throw-away-ac-slater
    [link] [comments]

    LAMP dev here. I start feeling the urge to learn something new (language/framework/...) to do better web apps. Where do I go?

    Posted: 14 Mar 2019 12:41 PM PDT

    I'm perfectly fine with PHP and I really love it. But now that I am starting to move into the "web apps" territory I suspect I need something more app-oriented. Push notifications comes to my mind. I can't do anything like that with just PHP and simple Javascript.

    What would you suggest? React, Node, Angular ... I know those names but I've never explored them because I actually nevever "needed" them. I feel a bit lost.

    What would you suggest?

    submitted by /u/MarmotOnTheRocks
    [link] [comments]

    Is it worthwhile to have a substantial "vanilla" project in my portfolio alongside those made with React/Vue/Angular, just to show that I can? Or would this be a waste of time?

    Posted: 14 Mar 2019 03:15 PM PDT

    Can this be done with WordPress or should I build from scratch?

    Posted: 14 Mar 2019 01:31 PM PDT

    I am tasked with making a website for a rental home company, Airbnb type rooms. The site itself is going to look very similar to [airbnb](airbnb.com). The listings and such will be pulled from a third party API which is not difficult at all. There will be a search function similar to that on airbnb again example. Only it won't be that complicated, just have the listing shown on the map which is not interactive at all (no borders/drawing to limit) and not nearly as many results & listings. So thats pretty simple, search function that shows the side by side display of a map with dots representing the listings.

    Also I want to make user accounts. The accounts page would show what you would expect as well as handle payments and communication between me and the clients.

    Would this be better off building from scratch or better finding a bunch of wordpress plugins?

    submitted by /u/Storm-Spirit
    [link] [comments]

    Quality Control

    Posted: 14 Mar 2019 12:15 PM PDT

    Friends, and family want me to start applying for jobs immediately after seeing my "basic" portfolio and projects. However, I want to be able to onboard in a web dev or software company and know exactly what I'm doing and need minimal training. Want to offer as much value as possible, only have one chance to make a first impression and half-assed projects is not a good look and so I take my time. Should be job ready in a month. Aiming for at least $40-50k salary. Technically I could start applying since I know HTML, CSS, and JavaScript at a moderate/usable level.

    Thoughts?

    submitted by /u/0fficialRider99
    [link] [comments]

    Headless CMS - Does it make sense for small web development company servicing small businesses

    Posted: 14 Mar 2019 11:53 AM PDT

    My company has been designing and developing custom websites for local small business clients for about 10 years now. Currently we design the site and then build it using drupal or wordpress as a CMS. My designer (who has very little programming knowledge) thinks going the wordpress route is the best due to the vast ecosystem of plug and play plugins (aka enable plugin, CSS plugin page and continue). To me it seams like adding all the bloat to the website ends up degrading our bottom line by providing a less personalized website and increasing our hosting costs. As headless technology gets better and better it seems as though separating the content from the frontend would allow us to use and manipulate the data in any way we want.

    So is it worth it to go headless? (keep in mind that we do not build large corporate website)

    How would I convince a designer that it is in our best interest?

    Should we continue to use wordpress or drupal as our backend or go with a headless CMS service like contentful.

    Any input will be helpful.

    Cheers

    submitted by /u/bloomt1990
    [link] [comments]

    I wasn't planning to leave my job, but I got a much better offer my company can't match, and I'm terrified.

    Posted: 14 Mar 2019 05:53 AM PDT

    Awful problem to have, right? But I'm struggling so hard.

    I currently have a good job where I do well. I've been here a few years. We are constantly learning, we do real work that has a good impact. I get paid pretty well for where I live with good benefits and I'm able to live comfortably. It's low-stress, I work like 35 hours a week, get lots of vacation, flex time, etc. I have opportunity to move up, but it is limited since it's a small IT department. The one thought I had was that I'd like the opportunity to work remote sometimes so I can travel more. I'd really like the opportunity to spend some time living in other places.

    I wasn't looking for a new job, however a recruiter contacted me. Normally when I get recruiters, they're not a good fit so I ignore them - but this one was for a large, well-known company offering me a senior role that was a perfect match for my skills, so I figured I'd see where it went. I ended up getting an offer.

    The offer is fantastic - the money is DOUBLE what I currently make with all the same benefits. I wouldn't see that money in a lifetime with my current company. The company is reputable, though the product I'd be working on is relatively new which means I don't know what the outlook is for the position, there's a good chance I could be looking for a new job in 2 years. I'd get a bit less vacation time (not sure if they're flexible on this yet), however the job is fully remote - meaning I could travel wherever I wanted. I don't mind working on the road if I can stay somewhere for a couple months.

    The part that scares me is that I'd be leaving something comfy and going into the total unknown. I don't really WANT to leave, but I feel I'd be stupid to pass up this offer.

    While my job feels important, this new job feels like a big boy job with much higher stakes (because of the higher pay). I briefly worked remote in college and it didn't go well (hard time focusing), but that was a very different time in my life - I honestly don't know how remote work is going to go and if I can focus. People I've talked to have claimed that it's fairly relaxed with good work-life balance, but I'm scared I'll be working 60 hour weeks - it's hard to know without being there. The work isn't going to be as impactful and rewarding. I'm not sure how innovative they are. I also have a bit of imposter syndrome - I have 10 years experience but I'm terrified that I'll start this job and it'll be too hard or I'll realize I have no idea what the hell I'm doing or that remote work sucks. (Though I'm certain I could get another job easily if it didn't work out).

    To make it more complicated - my boss got word that I had another opportunity (told a friend, who told a friend, who is friends with my boss - oops). I figured this out when he pulled me into his office and told me he'd be pushing for me to get a large promotion very soon. Although it's a great opportunity and would pay more, I know they can't come close to the salary of my new job, and I'm worried that it would put me right in the middle of some garbage that's happening elsewhere in the company. I feel very bad about leaving my team since there's really no one else capable of doing my job other than my boss, who already has his work cut out for him. Shit is crazy busy right now.

    I feel like I'd be stupid not to take this new job, right? But I'm terrified. My current job is comfy and I don't WANT to leave, but this new offer (esp the money) would be life-changing. I'd appreciate any advice or stories from someone who's been in a similar situation.

    submitted by /u/EfficientFrosting3
    [link] [comments]

    My domain and domains of clients on same host or separate them.What solution to pick?

    Posted: 14 Mar 2019 03:25 PM PDT

    Here is the thing.We are new start-up which is micro niche targeted for small business offering digital marketing services combined with some kind hosting solutions.

    What is best from your side to pick as model of working.

    1. Your main website with hosting your clients on own platform on same domain as this
    2. Create own main root site for your service and building host for clients on another domain as case of Wix and Wixsites which are separated.

    This will help us a lot and we are interested in your full depth answers.

    submitted by /u/UpsetWhile
    [link] [comments]

    Best way to have webform that goes out as a fax?

    Posted: 14 Mar 2019 03:00 PM PDT

    I have a client that has a bunch of fillable PDFs that they want to receive as a fax from their website.

    My thinking so far is using these steps:

    1. Create forms in HTML with all the fields from their existing PDFs.
    2. Use their existing PDFs as templates and use Fpdf/fpdi to write the content from the html forms onto them (this is doable but it would suck to position everything onto the PDF templates).
    3. Once the PDF is generated, fax it using Twilio API (this would be the easiest part).

    My small problem here is manually re-creating the forms in HTML, and the larger problem is mapping the html form inputs into the correct template locations with fpdf/fpdi.

    Oh yeah, then there's the signature which may or may not suck but I haven't thought about it much yet.

    Is there a better approach I should be thinking about?

    Thanks!

    submitted by /u/WPNoobz
    [link] [comments]

    Understanding network throttling: DevTools vs. Lighthouse vs. Netem

    Posted: 14 Mar 2019 02:34 PM PDT

    Questions Regarding Development Database in Teams

    Posted: 14 Mar 2019 02:21 PM PDT

    I work in a collaborative environment where all developers share the same development database. I am aware that this is generally a bad practice, but apparently the reason for doing this is because there's a daily integration built in between the production database and this development database. This means that every night the development database gets updated with new data that got inserted into the production database.

    I want to work in a development database where I can freely make migrations without breaking my coworkers' app. Do I simply change the host address for the database connection to my local host or are there additional steps? Let's say that the base then runs on my local host, how do I ensure it gets integrated with the production database as it is now?

    submitted by /u/dotobird
    [link] [comments]

    Storage layer - Docker container/volumes vs cloud providers

    Posted: 14 Mar 2019 09:42 AM PDT

    Hi all,

    Not sure if this is the right place to ask this, but I'm in the process of planning the architecture for a new set of web services, and I'm trying to get up to speed on the industry standards of doing certain things. In particular, I know I need the speed and scalability of using Docker containers and an orchestrator like Kubernetes for my business logic, but I'm having a difficult time understanding and finding information on what the right approach is for building a storage layer in my service.

    My services will likely require a large amount of unstructured data, so some sort of NoSQL database is likely what I'm going to be using. Speed is semi-important, but scale and reliability is far more important. So the question I'm having trouble answering is: should I roll my own database as a container within my own cluster (with the volumes backed up to some cloud file storage), or should I use a cloud-managed DB like AWS DynamoDB or Azure Table Storage/CosmosDB? I can't seem to find pros/cons when querying this on Google, as the results skew towards tutorials on using the first approach. Any help or helpful reading would be appreciated.

    submitted by /u/LinktotheFuture
    [link] [comments]

    Is there an IDE to make websites that isn't language specific?

    Posted: 14 Mar 2019 01:27 PM PDT

    Right now I'm using C# mvc with razor. It's great when using the visual studio IDE. However I want to develop a website as a personal project, using linux at home and I might not want to use C#+razor (depends on plugin support for vs code).

    I was wondering is there anything I can use to build a website with intellisense/autocomplete? I would love to have parts of html be in functions with parameters. Would be nice if it's mostly/entirely interpreter so I can see my changes in an instant (I can press tab+alt and F5 pretty quickly).

    I use vs code and it'd be nice for syntax highlighting (not required) and auto complete (mostly required, I rather not build my own tech myself). For the backend I hope it can be anything. Like if I can specify variables in a file (iirc JADE uses a json config file for variables) or have it grab data using json so anything can be used as the backend

    submitted by /u/PrestigiousInterest9
    [link] [comments]

    Adding a link to a javascript string

    Posted: 14 Mar 2019 01:22 PM PDT

    I have a calendar feature that uses javascript and moment.js, which works fine. Though I would like to add links, similar to href with html, to the strings containing eventName, so that the eventName displayed within the calendar are clickable links. I've included the function and strings including each eventName.. Any advice? I've included my SO question as well as my code..

    https://stackoverflow.com/questions/55170523/adding-a-link-to-javascript-string/55170830#55170830

    !function() { var today = moment(); function Calendar(selector, events) { this.el = document.querySelector(selector); this.events = events; this.current = moment().date(1); this.events.forEach(function(ev) { ev.date = moment(ev.date); }); this.draw(); var current = document.querySelector('.today'); } Calendar.prototype.draw = function() { //Create Header this.drawHeader(); //Draw Month this.drawMonth(); this.drawLegend(); } Calendar.prototype.drawHeader = function() { var self = this; if(!this.header) { //Create the header elements this.header = createElement('div', 'header'); this.header.className = 'header'; this.title = createElement('h1'); var right = createElement('div', 'right'); right.addEventListener('click', function() { self.nextMonth(); }); var left = createElement('div', 'left'); left.addEventListener('click', function() { self.prevMonth(); }); //Append the Elements this.header.appendChild(this.title); this.header.appendChild(right); this.header.appendChild(left); this.el.appendChild(this.header); } this.title.innerHTML = this.current.format('MMMM YYYY'); } Calendar.prototype.drawMonth = function() { var self = this; if(this.month) { this.oldMonth = this.month; this.oldMonth.className = 'month out ' + (self.next ? 'next' : 'prev'); this.oldMonth.addEventListener('webkitAnimationEnd', function() { self.oldMonth.parentNode.removeChild(self.oldMonth); self.month = createElement('div', 'month'); self.backFill(); self.currentMonth(); self.fowardFill(); self.el.appendChild(self.month); window.setTimeout(function() { self.month.className = 'month in ' + (self.next ? 'next' : 'prev'); }, 16); }); } else { this.month = createElement('div', 'month'); this.el.appendChild(this.month); this.backFill(); this.currentMonth(); this.fowardFill(); this.month.className = 'month new'; } } Calendar.prototype.backFill = function() { var clone = this.current.clone(); var dayOfWeek = clone.day(); if(!dayOfWeek) { return; } clone.subtract('days', dayOfWeek+1); for(var i = dayOfWeek; i > 0 ; i--) { this.drawDay(clone.add('days', 1)); } } Calendar.prototype.fowardFill = function() { var clone = this.current.clone().add('months', 1).subtract('days', 1); var dayOfWeek = clone.day(); if(dayOfWeek === 6) { return; } for(var i = dayOfWeek; i < 6 ; i++) { this.drawDay(clone.add('days', 1)); } } Calendar.prototype.currentMonth = function() { var clone = this.current.clone(); while(clone.month() === this.current.month()) { this.drawDay(clone); clone.add('days', 1); } } Calendar.prototype.getWeek = function(day) { if(!this.week || day.day() === 0) { this.week = createElement('div', 'week'); this.month.appendChild(this.week); } } Calendar.prototype.drawDay = function(day) { var self = this; this.getWeek(day); //Outer Day var outer = createElement('div', this.getDayClass(day)); outer.addEventListener('click', function() { self.openDay(this); }); //Day Name var name = createElement('div', 'day-name', day.format('ddd')); //Day Number var number = createElement('div', 'day-number', day.format('DD')); //Events var events = createElement('div', 'day-events'); this.drawEvents(day, events); outer.appendChild(name); outer.appendChild(number); outer.appendChild(events); this.week.appendChild(outer); } Calendar.prototype.drawEvents = function(day, element) { if(day.month() === this.current.month()) { var todaysEvents = this.events.reduce(function(memo, ev) { if(ev.date.isSame(day, 'day')) { memo.push(ev); } return memo; }, []); todaysEvents.forEach(function(ev) { var evSpan = createElement('span', ev.color); element.appendChild(evSpan); }); } } Calendar.prototype.getDayClass = function(day) { classes = ['day']; if(day.month() !== this.current.month()) { classes.push('other'); } else if (today.isSame(day, 'day')) { classes.push('today'); } return classes.join(' '); } Calendar.prototype.openDay = function(el) { var details, arrow; var dayNumber = +el.querySelectorAll('.day-number')[0].innerText || +el.querySelectorAll('.day-number')[0].textContent; var day = this.current.clone().date(dayNumber); var currentOpened = document.querySelector('.details'); //Check to see if there is an open detais box on the current row if(currentOpened && currentOpened.parentNode === el.parentNode) { details = currentOpened; arrow = document.querySelector('.arrow'); } else { //Close the open events on differnt week row //currentOpened && currentOpened.parentNode.removeChild(currentOpened); if(currentOpened) { currentOpened.addEventListener('webkitAnimationEnd', function() { currentOpened.parentNode.removeChild(currentOpened); }); currentOpened.addEventListener('oanimationend', function() { currentOpened.parentNode.removeChild(currentOpened); }); currentOpened.addEventListener('msAnimationEnd', function() { currentOpened.parentNode.removeChild(currentOpened); }); currentOpened.addEventListener('animationend', function() { currentOpened.parentNode.removeChild(currentOpened); }); currentOpened.className = 'details out'; } //Create the Details Container details = createElement('div', 'details in'); //Create the arrow var arrow = createElement('div', 'arrow'); //Create the event wrapper details.appendChild(arrow); el.parentNode.appendChild(details); } var todaysEvents = this.events.reduce(function(memo, ev) { if(ev.date.isSame(day, 'day')) { memo.push(ev); } return memo; }, []); this.renderEvents(todaysEvents, details); arrow.style.left = el.offsetLeft - el.parentNode.offsetLeft + 27 + 'px'; } Calendar.prototype.renderEvents = function(events, ele) { //Remove any events in the current details element var currentWrapper = ele.querySelector('.events'); var wrapper = createElement('div', 'events in' + (currentWrapper ? ' new' : '')); events.forEach(function(ev) { var div = createElement('div', 'event'); var square = createElement('div', 'event-category ' + ev.color); var span = createElement('span', '', ev.eventName); div.appendChild(square); div.appendChild(span); wrapper.appendChild(div); }); if(!events.length) { var div = createElement('div', 'event empty'); var span = createElement('span', '', 'No Events'); div.appendChild(span); wrapper.appendChild(div); } if(currentWrapper) { currentWrapper.className = 'events out'; currentWrapper.addEventListener('webkitAnimationEnd', function() { currentWrapper.parentNode.removeChild(currentWrapper); ele.appendChild(wrapper); }); currentWrapper.addEventListener('oanimationend', function() { currentWrapper.parentNode.removeChild(currentWrapper); ele.appendChild(wrapper); }); currentWrapper.addEventListener('msAnimationEnd', function() { currentWrapper.parentNode.removeChild(currentWrapper); ele.appendChild(wrapper); }); currentWrapper.addEventListener('animationend', function() { currentWrapper.parentNode.removeChild(currentWrapper); ele.appendChild(wrapper); }); } else { ele.appendChild(wrapper); } } Calendar.prototype.drawLegend = function() { var legend = createElement('div', 'legend'); var calendars = this.events.map(function(e) { return e.calendar + '|' + e.color; }).reduce(function(memo, e) { if(memo.indexOf(e) === -1) { memo.push(e); } return memo; }, []).forEach(function(e) { var parts = e.split('|'); var entry = createElement('span', 'entry ' + parts[1], parts[0]); legend.appendChild(entry); }); this.el.appendChild(legend); } Calendar.prototype.nextMonth = function() { this.current.add('months', 1); this.next = true; this.draw(); } Calendar.prototype.prevMonth = function() { this.current.subtract('months', 1); this.next = false; this.draw(); } window.Calendar = Calendar; function createElement(tagName, className, innerText) { var ele = document.createElement(tagName); if(className) { ele.className = className; } if(innerText) { ele.innderText = ele.textContent = innerText; } return ele; } }(); !function() { var data = [ { eventName: 'Dinner under the stars', calendar: 'Food/Beverage', color: 'orange', date: '2019-03-10' }, { eventName: 'Wine tasting', calendar: 'Food/Beverage', color: 'orange', date: '2019-03-08' }, { eventName: 'BBQ Festival', calendar: 'Food/Beverage', color: 'orange', date: '2019-03-10' }, { eventName: 'Food Event', calendar: 'Food/Beverage', color: 'orange', date: '2019-03-10' }, { eventName: 'Wine Event', calendar: 'Food/Beverage', color: 'orange', date: '2019-03-12' }, { eventName: 'Wine Event', calendar: 'Food/Beverage', color: 'orange', date: '2019-03-18' }, { eventName: 'Food Event', calendar: 'Food/Beverage', color: 'orange', date: '2019-03-20' }, { eventName: 'Team vs Team', calendar: 'Sports', color: 'blue', date: '2019-03-01' }, { eventName: 'Team vs Team', calendar: 'Sports', color: 'blue', date: '2019-03-02' }, { eventName: 'Kickball Event', calendar: 'Sports', color: 'blue', date: '2019-04-04' }, { eventName: 'Team vs Team', calendar: 'Sports', color: 'blue', date: '2019-04-01' }, { eventName: 'Haunted tour', calendar: 'History', color: 'yellow', date: '2019-03-04' }, { eventName: 'Art museum', calendar: 'History', color: 'yellow', date: '2019-03-19' }, { eventName: 'Civil War tour', calendar: 'History', color: 'yellow', date: '2019-03-20' }, { eventName: 'History Event', calendar: 'History', color: 'yellow', date: '2019-03-31' }, { eventName: 'Outdoor movie', calendar: 'Outdoors', color: 'green', date: '2019-03-02' }, { eventName: 'Nature walk', calendar: 'Outdoors', color: 'green', date: '2019-03-10' }, { eventName: 'White water rafting', calendar: 'Outdoors', color: 'green', date: '2019-03-14' }, { eventName: 'Nature Event', calendar: 'Outdoors', color: 'green', date: '2019-03-17' } ]; var calendar = new Calendar('#calendar', data); }(); 

    <body> <div id="calendar"></div> <script src="https://cdnjs.cloudflare.com/ajax/libs/moment.js/2.5.1/moment.min.js"></script> <script src="script.js"></script> </body> 

    submitted by /u/calbc
    [link] [comments]

    Should I use Socket.io or Server Sent Event for this scenario?

    Posted: 14 Mar 2019 01:15 PM PDT

    I am building a chat application, user can login to chat or just view the messages.

    For logged in user, I will probably use socket.io.

    For guests, use I use server sent event instead? Because socket.io is a bi-directional socket. So there's probably some overhead.

    submitted by /u/crazyinsoul
    [link] [comments]

    Is it expected behavior for an input field on a webpage to clear upon page refresh?

    Posted: 14 Mar 2019 01:04 PM PDT

    Awesome landing page animation - how can I reproduce?

    Posted: 14 Mar 2019 12:39 PM PDT

    https://muzzleapp.com How can I reproduce this never ending amazing "notifications" animation?

    submitted by /u/esthor
    [link] [comments]

    Orbitting Icon Using AnimeJS

    Posted: 14 Mar 2019 11:59 AM PDT

    Hi,

    I'm trying to achieve the following effect (https://codepen.io/saa-d/pen/QoQJdm) using AnimeJS.

    The following is the work I've done so far:
    CSS

    .orbitting-icon { position: absolute; top: 455px; left: 935px; width: 3vw; height: 3vw; background-color: white; border-radius: 100%; } 

    JS (AnimeJS)

    /* - - AnimeJS Animations - - */ // -> Orbitting Icon Animation let orbittingIcon = document.querySelector(".orbitting-icon"); let startPosOfOrbitX = getComputedStyle(orbittingIcon).left; let startPosOfOrbitY = getComputedStyle(orbittingIcon).top; let orbitSpeed = 2000; anime({ targets: '.orbitting-icon', loop: true, // CHANGE: Loop as long as this is true (Can be a condition to check whether to stop the animation) duration: 800, easing: 'linear', keyframes: [ { // Keyframe 1 translateX: '-=50px', translateY: '+=50px', }, { // Keyframe 2 translateX: '-=50px', translateY: '+= 50px', }, { // Keyframe 3 } ] }); 

    However when I try to use the zIndex property with AnimeJS it animates for a while and it disappears.

    Any ideas?

    Thanks in advance!

    submitted by /u/iEmerald
    [link] [comments]

    No comments:

    Post a Comment