Feed aggregator

Wim Leers: Backwards Compatibility vs Evolvability vs Maintainability

News from Planet Drupal - Thu, 04/11/2019 - 13:59

Details to follow :)

Video: Conference: DrupalCon SeattleLocation: Seattle, WA, United StatesDuration: 30 minutesExtra information: 

See https://events.drupal.org/seattle2019/sessions/backwards-compatibility-burden-benefit.

Categories: Drupal

Intermediate Back-End Engineer (Vancouver) - POWERSHIFTER - Vancouver, BC

2018 Drupal Jobs from Indeed - Thu, 04/11/2019 - 12:07
Familiarity with traditional CMSes including, but not limited to, WordPress and Drupal. Work closely with Front-end Developers to ensure seamless integration...
From Powershifter - Thu, 11 Apr 2019 12:07:26 GMT - View all Vancouver, BC jobs
Categories: Drupal

Senior Back-End Developer (Vancouver) - POWERSHIFTER - Vancouver, BC

2018 Drupal Jobs from Indeed - Thu, 04/11/2019 - 12:07
Familiarity with traditional CMSes including, but not limited to, WordPress and Drupal. Work closely with Front-end Developers to ensure seamless integration...
From Powershifter - Thu, 11 Apr 2019 12:07:26 GMT - View all Vancouver, BC jobs
Categories: Drupal

SEO Expert needed to review a new website (WooCommerce knowledge needed) - Upwork

WordPress Work From UpWork - Thu, 04/11/2019 - 11:01

I am looking for a person who can be on a call with me and check the website I am working on. It's a store for renting. We use WooCommerce so it's mandatory that you are familiar with that.

First, you are going to check the website yourself and after that, I will log in and share my screen. You will make suggestions in order for us to rank better. We do not have a lot of competition.

We already have the keywords but we need an expert to review the progress so far and guide us in achieving better results.

Write a word backlink in your proposal. Those who forget to write that will be reported.

I use Yoast and it's very helpful but SEO is complicated and it needs more things. On-page optimization is more important for me at the moment. I have only one published article and several pages.

You must be familiar with WP and how things work, how to configure everything and check if there are issues that are preventing us from ranking better.

We can do it in phases. After your suggestions, I will edit things that are important and we will schedule another meeting to review other things.

PLEASE, read carefully everything I wrote. I need someone who knows how to do things, not interested in rookies or people who want to learn SEO. Freelancers who did SEO test will have an advantage.

More details to be provided when I open the contract.

Please let me know your hourly rate. After you check the website we can talk about a fixed price.

Thank you, I hope you have a great and successful week.

Posted On: April 11, 2019 18:11 UTC
Category: Sales & Marketing > SEO - Search Engine Optimization
Skills: Content Writing, Google Analytics, On-Page Optimization, Organic Traffic Growth, Search Engine Optimization (SEO), SEO Audit, SEO Audit Report, SEO Report, SEOMoz, Woocommerce, WordPress
Country: Serbia
click to apply

Frontend development - Upwork

WordPress Work From UpWork - Thu, 04/11/2019 - 10:34
We are currently doing a redesign of our website: https://achefstour.com/

The number of pages and structure of the site will be roughly the same as at the moment. There will be 1 completely new page. The blog will also be included, as it will be moved off wordpress and onto a subfolder achefstour.com/blog instead of blog.achefstour.com as it is at present. The content will be more or less the same as at present. We are just doing a visual refresh. You can see the scope of the work by looking at our current site.

We expect to receive the finalised designs from our design studio within the next 24 hours. You will receive the designs in Figma format.

We will need the mobile usability to be greatly improved on the new site (mobile designs are also ready). Some refactoring will be necessary as some parts are a bit of a mess.

The site is built on RoR, so you must be comfortable working with ERB tags. There is no backend work required (but bonus if you can help with backend stuff). You will work in Git, and push your work at the end of every session so you must be comfortable with Git.

Images are pulled from AWS, and some content will be taken from Contentful, so it will be helpful if you are familiar with AWS at least.

We want this done well to a high standard, and all code will be reviewed.



Posted On: April 11, 2019 18:11 UTC
Category: Web, Mobile & Software Dev > Web Development
Skills: CSS, Git, HTML, JavaScript
Country: United Kingdom
click to apply

Agiledrop.com Blog: Top Drupal blog posts from March 2019

News from Planet Drupal - Thu, 04/11/2019 - 08:22

Same as every month, we wanted to share with you our favorite Drupal blog posts from the previous month. So, here's a list of 8 Drupal-related posts from March that we found the most interesting. Enjoy!

Categories: Drupal

SEO expert needed to improve organic rankings of my Wordpress website - Upwork

WordPress Work From UpWork - Thu, 04/11/2019 - 05:12

I'm open to any initiative to improve the organic rankings of one page on my website https://www.fluentsimple.com/italian-audio-course/
This may involve but should not be limited to creating/optimizing content, sharing on social media, technical SEO, quality backlink building.

My goal is to appear in the first SERP for at least 2 short phrases related to the product shown on this page i.e. my Italian language audio course. I'm targeting: "(best) Italian audio course (review)", and "Italian audio lessons".

The purpose is to boost sales of this product.
If this first project goes well, I'd like to expand it to other pages and keywords.


I'm already actively posting long quality content on my blogs and sharing it on Facebook; optimizing on-page SEO with Yoast, adding quality backlinks with positive reviews from authoritative language bloggers.
To boost the time spent on the website, among others, I made an online Italian test, which is performing well.

However, after weeks, I'm still stuck around position 20.
Reviews from users and bloggers have all been positive. Sales are growing, but slowly, and they're mostly from referrals like popular language blogs.


I understand that definitive results can take weeks, if not months. However, I'd like to notice some changes within a couple of weeks to make sure we're on the right track.

Posted On: April 11, 2019 07:42 UTC
Category: Sales & Marketing > SEO - Search Engine Optimization
Skills: Off-page Optimization, On-Page Optimization, Organic Traffic Growth, Search Engine Optimization (SEO), SEO Audit
Country: Italy
click to apply

Drupal Headless CMS (Contenta) consulting - Upwork

WordPress Work From UpWork - Thu, 04/11/2019 - 01:45
I am evaluating Contenta, and I want an expert that can answer some specific questions for me and show me a demo of a few things, so I can decide if it's the right platform for us.

Here are some of my most important requirements.  I would like to see a few of these that are easy to implement in a demo, and the others I'd like to discuss how they can be implemented.  

Note: I DO NOT expect all of these things done for a demo.

* set up a demo install on your server for me
* provide me with Contenta admin access so I can play with the demo a little bit
* implement a few of the items below and show me how well Contenta can handle each of these.  
* show me how REST API security should be implemented on the service calls.  

If the demo goes well, this could turn into a bigger opportunity. I need to know that Contenta is the right platform for us first.  

1. Must have easy to use admin access and ability to set roles on specific users, such as: admin, moderator, marketer
2. Ability to CRUD localized Strings, where each string has 2 parameters, locale and key, for example: EN_US + WELCOME = Welcome
3. There needs to be an API to pull down all strings for a specific language at the very beginning of the game.
4. Store custom config information(simple key-value pairs).  There should be an API to pull down all strings for a specific language at the very beginning of the game.
5. Stores videos to be presented on home page
Stores player’s account info, including: profile info, score, gold, credits, hacker reports
6. Must support custom content types
7. Must be able to easily write our own APIs, that interact with the DB, etc.
8. All data must be retrievable via REST/JSON.

Posted On: April 11, 2019 07:42 UTC
Category: Web, Mobile & Software Dev > Web Development
Skills: API, Architecture Design, Backend Rest API, CMS, CMS Development, Drupal, HTTP, PHP, WordPress
Country: United States
click to apply

IT Consulting company website development. Need help with the design and content - Upwork

WordPress Work From UpWork - Wed, 04/10/2019 - 23:34
I need a professional website for a IT services firm. I also need help with the content and the sitemap. I do not have lot of the content and images.
on the website I need the blog section where I can have blogs

Posted On: April 11, 2019 07:42 UTC
Category: Web, Mobile & Software Dev > Web & Mobile Design
Skills: Content Writing, Web Design, Website Development, WordPress
Country: United States
click to apply

Flocon de toile | Freelance Drupal: Generate an automatic summary with Drupal 8

News from Planet Drupal - Wed, 04/10/2019 - 23:14
The generation of an automatic summary for relatively long articles is a recurring need for content publishing. A summary provides better visibility for the reader, and an effective way to navigate within an article as soon as it is a little dense. Let's discover the Toc.js module which allows us to easily generate a summary in a modular way whatever the page of a Drupal 8 site.
Categories: Drupal

build me a website platform like wix.com for a cv builder company - Upwork

WordPress Work From UpWork - Wed, 04/10/2019 - 22:29
We create CV websites for candidates in the market for a new job

select template
upload their cv
it uploads the content from the cv onto the website

here is an example template - www.cvbetter.com

please provide me with a strategy and proposal before approaching, i am happy to answer any questions you have

Posted On: April 11, 2019 07:42 UTC
Category: Web, Mobile & Software Dev > Desktop Software Development
Skills: CMS, CSS, Database Architecture, Desktop Applications, e-Commerce Website, Graphic Design, HTML, HTML5, PHP, UI/UX, Web Design, Website Development, WordPress
Country: United Kingdom
click to apply

Dries Buytaert: The privilege of free time in Open Source

News from Planet Drupal - Wed, 04/10/2019 - 21:44

In Open Source, there is a long-held belief in meritocracy, or the idea that the best work rises to the top, regardless of who contributes it. The problem is that a meritocracy assumes an equal distribution of time for everyone in a community.

Open Source is not a meritocracy

I incorrectly made this assumption myself, saying: The only real limitation [to Open Source contribution] is your willingness to learn.

Today, I've come to understand that inequality makes it difficult for underrepresented groups to have the "free time" it takes to contribute to Open Source.

For example, research shows that women still spend more than double the time as men doing unpaid domestic work, such as housework or childcare. I've heard from some of my colleagues that they need to optimize every minute of time they don't spend working, which makes it more difficult to contribute to Open Source on an unpaid, volunteer basis.

Or, in other cases, many people's economic conditions require them to work more hours or several jobs in order to support themselves or their families. Systemic issues like racial and gender wage gaps continue to plague underrepresented groups, and it's both unfair and impractical to assume that these groups of people have the same amount of free time to contribute to Open Source projects, if they have any at all.

These are just a few examples of free time not being equally distributed. What this means is that Open Source is not a meritocracy.

Free time is a mark of privilege, rather than an equal right. Instead of chasing an unrealistic concept of meritocracy, we should be striving for equity. Rather than thinking, "everyone can contribute to open source", we should be thinking, "everyone deserves the opportunity to contribute".

Time inequality contributes to a lack of diversity in Open Source

This fallacy of "free time" makes Open Source communities suffer from a lack of diversity. The demographics are even worse than the technology industry overall: while 22.6% of professional computer programmers in the workforce identify as women (Bureau of Labor Statistics), less than 5% of contributors do in Open Source (GitHub). And while 34% of programmers identify as ethnic or national minorities (Bureau of Labor Statistics), only 16% do in Open Source (GitHub).

It's important to note that time isn't the only factor; sometimes a hostile culture or unconscious bias play a part in limiting diversity. According to the same GitHub survey cited above, 21% of people who experienced negative behavior stopped contributing to Open Source projects altogether. Other recent research showed that women's pull requests were more likely to get accepted if they had a gender-neutral username. Unfortunately, examples like these are common.

Taking action: giving time to underrepresented groups

While it's impossible to fix decades of gender and racial inequality with any single action, we must do better. Those in a position to help have an obligation to improve the lives of others. We should not only invite underrepresented groups into our Open Source communities, but make sure that they are welcomed, supported and empowered. One way to help is with time:

  • As individuals, by making sure you are intentionally welcoming people from underrepresented groups, through both outreach and actions. If you're in a community organizing position, encourage and make space for people from underrepresented groups to give talks or lead sprints about the work they're interested in. Or if you're asked to, mentor an underrepresented contributor.
  • As organizations in the Open Source ecosystem, by giving people more paid time to contribute.

Taking the extra effort to help onboard new members or provide added detail when reviewing code changes can be invaluable to community members who don't have an abundance of free time. Overall, being kinder, more patient and more supportive to others could go a long way in welcoming more people to Open Source.

In addition, organizations within the Open Source ecosystem capable of giving back should consider financially sponsoring underrepresented groups to contribute to Open Source. Sponsorship can look like full or part-time employment, an internship or giving to organizations like Girls Who Code, Code2040, Resilient Coders or one of the many others that support diversity in technology. Even a few hours of paid time during the workweek for underrepresented employees could help them contribute more to Open Source.

Applying the lessons to Drupal

Over the years, I've learned a lot from different people's perspectives. Learning out in the open is not always easy, but it's been an important part of my personal journey.

Knowing that Drupal is one of the largest and most influential Open Source projects, I find it important that we lead by example.

I encourage individuals and organizations in the Drupal community to strongly consider giving time and opportunities to underrepresented groups. You can start in places like:

When we have more diverse people contributing to Drupal, it will not only inject a spark of energy, but it will also help us make better, more accessible, inclusive software for everyone in the world.

Each of us needs to decide if and how we can help to create equity for everyone in Drupal. Not only is it good for business, it's good for people, and it's the right thing to do.

Special thanks to the Drupal Diversity and Inclusion group for discussing this topic with me.

Categories: Drupal

Need 2 Unique Websites built using our Divi Builder License - Upwork

WordPress Work From UpWork - Wed, 04/10/2019 - 20:20
We need to have 2 Wordpress site built on using our own Divi theme (using our Divi builder with unlimited sites, so you can use our license)

** Listing this as hourly, however, please provide an estimate of the total hours/cost for this job.

Both sites are lead generation websites, forms will need to be coded, but no shopping cart or login functionality.

Information about each site:
- 12 pages for each site but only 4 page designs (spread among the 12 pages)
- Images will be supplied
- You can use Lorem Ipsum placement text - all content will be entered later by our office
- Lead Generation website- will need forms but no shopping cart

Each of the 2 sites need to have a unique design and feel - not the same or similar design copied.

Need delivery ASAP:   1 to 2 weeks maximum

Posted On: April 11, 2019 07:42 UTC
Category: Web, Mobile & Software Dev > Web & Mobile Design
Skills: Web Design, Website Development, WordPress
Country: United States
click to apply

Redfin Solutions: Embedding a React App in a Drupal 8 Site

News from Planet Drupal - Wed, 04/10/2019 - 20:07
Embedding a React App in a Drupal 8 Site

Lots of people in the Drupal community are eager to learn React these days, following Dries's announcement that React is coming to Drupal.

At NEDCamp in 2018 I presented on how to dip your toe into embedding a react application into a Drupal framework (video on drupal.tv).

This is the long-delayed blog post to follow up to the presentation.

Chris April 10, 2019
Categories: Drupal

Amazee Labs: DrupalCon Seattle Recap Day 1 & 2: Here We Go Again

News from Planet Drupal - Wed, 04/10/2019 - 19:18
DrupalCon Seattle Recap Day 1 & 2: Here We Go Again

It’s been roughly four years since I last attended any DrupalCon, the one in L.A. being my endmost venture to the North American watering hole. After that, I took a break from the seasonal migration and remained at home, in the office, like an overfed cat with agoraphobia.

Victor Künzig Wed, 04/10/2019 - 21:18

Normally I would invest my time in writing about attending sessions and/or how talks went from our speakers or BoFs and other social events. But since I spent the better half of Monday on a plane somewhere over the Atlantic, I will be taking this opportunity to compare this weeks experience to the one I had from four years ago. 

Besides the summits and the different ways you can buy the ticket nowadays, not much has really changed. DrupalCon remains the biggest Drupal event in the world, and you will meet an overabundance of incredibly friendly people there.

Part 1: The journey to Seattle

Like all DrupalCons for me, this one also began with an elongated trip through several airports, first a 1h 5min hop from Zurich to Amsterdam, followed by a roughly ten-hour flight to touch down at Seattle Tacoma International Airport.

Italy vs. France

The flights went smooth and apart from the occasional shakedown, I didn’t notice much uneasiness. That is until I was served lunch. There were several intriguing options, I had to make a comprehensive decision between Caesar salad, a vegetarian mozzarella pizza or a turkey and cheese croissant. Naturally given my never-ending love for Italian cuisine I opted for the pizza but it seemed that by the time the food cart reached my row, they were out.

Instead, I received a box that read “Fresh Croissant“ in big, classy letters printed on a reasonably attractive shell showcasing a map of Paris. Trading Italy for France couldn't be that bad, surely. But upon opening my small box of doom I was treated to what must have been the remains of a gutter rat, shipped directly from the catacombs of Paris onto my food tray. It‘s hard to describe the shape, consistency, and scent of the box innards without using chemical compositions or comparison to what floats around in a sewer. The temperature also seemed to vary quite a bit from top to bottom, further confirming my theory of it being alive at one point.

Whatever this was, it wasn't a “Parmesan Cheese, Mature Cheddar Cheese & Turkey” croissant.

Order at the border

Once landed I was keen to leave the rat behind and make my way through the checkpoints. I last visited the US in 2015 and have an ESTA, so I was sure I would be able to get through quickly and effortlessly. 

There were only 2 lines, US/Canadian citizens and ESTA/VISA holders, the latter was full of the majority of the passengers from my flight. Because of my seating arrangements, I exited the air tube quite late. The wait was long enough that every so often a disgruntled passenger reached terminal annoyance and broke down before attempting to bargain with the officer who was making his rounds or one of the airport staff members. Results of these interactions varied between total denial and instant gratification. I didn't bother trying to negotiate, I wasn't in a particular hurry, but after thirty minutes of barely any movement, my knees were getting unhappy.

At some point, one of the staffers approached me and asked if I had visited the US since 2008. When I answered positively he immediately pointed me towards line 1. Now, I’m no UX expert but perhaps that information could have been included on the signs. When others within my vicinity heard about my redirection, they promptly followed suit. Soon I was racing most of line two as they migrated like a flock of seagulls to line 1. We waited again.

But that wasn't the end of it. After I checked through the automated migration ATM I had to stand in line again for the final stamp of approval. There were 6 border control officers working that day. Some faster than others and some nicer than others, one, in particular, was having a rough start to the week. To say the least, officer McNasty wasn't exactly welcoming, in contrary, in German there is a word for people like that, we call them “Arschloch”.

He must have smelled the gutter rat on me because he wasn't exactly thrilled when I approached. Our interaction went something like this:

Officer McNasty: “You here for business or pleasure?”
Me: “Both.”
Officer McNasty: “There is no both, there is either business or pleasure. Are you here for business or pleasure?”
Me: “One week business, one week holiday.”

He responded with a frown that would have put my math teacher to shame, but a few minor questions later I finally received the approving stamp as he silently pointed me towards the escalator down to the baggage claim. I was free. Sort of.

The first one to spot both me and my suitcase gets a drink at DC Seattle. 

At last, I made it to Seattle, riding into the city I was treated with tall, striking buildings and a glimpse of the Harbour.

Hello Seattle!

Part 2: The venue and playing “Guess who?” The fortress of not so solitude

This year, DrupalCon is being held at the Washington State Convention Center. Built in 1988, this large 415’000 sqft complex is humongous compared to the European counterparts. It’s also located in what I would call “Downtown” Seattle. Take that with a grain of salt though as I base this on the six hours I’ve been in the city.

The building also sits on top of a freeway, which you can spot and overlook while you’re inside of it, neat!

When I first arrived, it took me some time to find the entrance. The building, depending on where you approach it from, is rather defensive and resembles a fortress more than a convention centre (think of the freeway as the moat). Even after finding the entrance, if you come in from the west you’ll have to use 4-6 escalators before you see any rooms. 

After collecting my badge from the friendly volunteers I made my way through the halls and started to look for familiar faces. DrupalCons are always tricky, you end up meeting a lot of people who seem to know you (or not) and I often have trouble remembering if I’ve met them. 

During times like these, I’d like to play the good old “Guess who?” game. The goal is to keep the conversation going until you can figure out who you’re talking to before your cover gets blown. 

Admittedly I've never successfully finished a session, but the strategy I’d recommend is starting the conversation with “Oh wow, it's been quite a while hasn’t it? What have you been up to since we last met?”. Hopefully make your opponent reveal some crucial information about their job, location, and where you met previously. If you're lucky one of these things will tip you off and trigger a spark to put that name on that face.

If you find yourself on the receiving end of my blank stare, I apologize. it's not you, it's me.

The booth, the booth, the booth is unattended

This is one of the first years Amazee Labs doesn't have a physical booth, but our sister company amazee.io does. I was giddy with my freedom to wander and check out the exhibition hall and while it was still under construction. 

If you’re around the exhibit hall you can find some Amazees, of both the io and Labs variety hanging out at the io booth. Come and say hello!

Giving back

While the booth was being constructed several of our peeps dug themselves into the contribution hall on the 6th floor.

You can easily spot John from about 600 miles away as he overlooks the kingdom of room 6A with his standing desk contraption. It’s a great conversation starter really, for the time I sat there I witnessed several hundred people approaching him and asking about every little detail of his mobile turret unit. 

So if the makers of this product are reading this post I think they should consider making John the official global ambassador of this mobile standup desk unit solution that fits into a backpack and gets a pass from the TSA.

Part 3: Extracurricular activities and the endless consumption of beverages

Monday evening presented itself with several social offerings, amongst which was a pub crawl that was attended by a few of the fellowship.

– Image courtesy of Josef Dabernig (@dasjo)

Since I began to fall asleep while walking (I was still running on Zurich time so technically it was around 3 am) I decided to skip the crawl as that would have ended up in a different kind of pizza.

But before that, I realized that for the first time ever, I forgot to pack a toothbrush and some paste. So after taking a nap for about an hour, I was forced to venture out again, this time to find the holy brush.

It’s a restaurant

Tuesday evening also saw the Amazee dinner, were we collectively gathered and feasted on quality beverages in a place called “Outlier”. The food was indeed fantastic, some people even dropped phrases such as “this is the best _________ I ever had in a restaurant”. 

Everyone seemed equally amazed about the quality of the provided liquid but not the selection. Which is why several of us left afterwards in search of alternatives to quench one's thirst.

In the end, it was a great, cosy dinner, filled with friends and family alike.

Part 4: Conclusion and final thoughts Should you go or should you stay?

So, then you wonder, what's this all about, what is the meaning of this stretched out the first impression? To be honest, I’m not sure. You probably noticed that I didn't compare it all that much to L.A., the reason for it is very simple, there is not much comparing needed.

While the venue and sessions may change, and the outside activities like the pub crawls are fun and inviting, there’s not really a wrong way to do DrupalCon. You can find your own way, roam around freely in town and every now and then you might run into some Drupal people that couldn’t be more different but somehow share the same passion.

Categories: Drupal

edits in wordpress site based on bakerywp - Upwork

WordPress Work From UpWork - Wed, 04/10/2019 - 19:04
do some edits in wordpress site (most of the stuff are content edits) based on bakerywp editor

Posted On: April 11, 2019 07:42 UTC
Category: Web, Mobile & Software Dev > Web Development
Country: Italy
click to apply

Software Developer in Test (SDET) - Ready to Pay - Vancouver, BC

NodeJS jobs - Wed, 04/10/2019 - 18:03
A little about Ready: As a wholly owned subsidiary of iQmetrix; Ready is a leading software solutions company that designs and builds products to perfect the...
From Ready to Pay - Wed, 10 Apr 2019 18:03:28 GMT - View all Vancouver, BC jobs
Categories: NodeJS

Designer for a flyer - Upwork

WordPress Work From UpWork - Wed, 04/10/2019 - 16:07
We are looking for someone to design a mailer (2 fold, 8.5 x 14) for us.

All the content will be provided.

Please send links of your previous work (or portfolio)

Posted On: April 10, 2019 20:11 UTC
Category: Design & Creative > Graphics & Design
Skills: Adobe Illustrator, Adobe InDesign, Adobe Photoshop, Banner Ad Design, CSS, CSS3, Graphic Design, HTML, HTML5, Illustration, JavaScript, jQuery, Logo Design, Photo Editing, PHP, Print Design, Print Layout Design, Web Design, Website Development, WordPress
Country: Canada
click to apply

Getting website out of the gate - email list, finish designing pages, posting first few articles - Upwork

WordPress Work From UpWork - Wed, 04/10/2019 - 16:03
Looking for someone to help with developing my WordPress blog - currently using a BuzzBlog Pro and love the design but still familiarizing myself with the system so I'm slowing myself down... which is why I am searching for help.

What's left to be done is the following:
- Finish building out the pages (About Me / Contact, Consultation / Services, Privacy / Confidentiality Agreement, etc.)
- Build email list & subscribe button (would like this to pop up when readers try to get downloadable material off my blog)
- Fix menu on website and mobile view

My goal:
- Have an appealing, unique blog that's easy for readers and search engines to read

Please give me an estimate of time and provide any samples - thank you!

Posted On: April 11, 2019 18:11 UTC
Category: Web, Mobile & Software Dev > Web Development
Skills: Blog, Content Management, Web Design, Website Development, WordPress
Country: United States
click to apply