Swansea City Youth and first–team breakthrough in 2013 Born in
Swansea, Richards played local football for his schools and local club
West End, before joining the
Cardiff City Academy. After two seasons, he was released and joined the
academy at their
South Wales rivals
Swansea City at the age of fifteen. Richards initially started out as a central midfielder but switched to playing as a defender under manager
Roberto Martínez due to the increased competition between midfielders in the first team at the time. He has since continued to play at that position as well. Richards earned £60 a week while on a scholarship with the
Swans. He then signed his first professional contract with the team. After spending two seasons with the academy and reserve sides, Throughout January and February, Richards was given a handful of first team opportunities. However, he lost his first team place for the remainder of the season following the return of
Àngel Rangel from injury. He made eight appearances during the 2010–11 season as Swansea went on to become the first Welsh team ever to gain promotion to the
Premier League. After appearing on the bench for several matches at the start of the following season, Richards made his Premier League debut when he came on as a substitute for
Neil Taylor during a 3–1 loss to
Norwich City on 15 October 2011. Twelve days later, he was rewarded with a new 18-month contract. He then made his first start for the club in the Premier League, playing in a 4–2 loss against
Blackburn Rovers on 3 December 2011. As the 2011–12 season progressed, Richards was sent to play in the reserves for the rest of the season, in order to regain his fitness. He finished the season with eight appearances. Because of this, he stated his desire to leave the club on loan to gain experience and compete for his spot in the first team. However, he was forced to wait until the winter transfer window to secure a move. In the first half of the season, he made just four appearances for Swansea, all in cup competitions. At the end of January, he joined
Crystal Palace on loan until the end of the season. He made his debut for the club five days later, on 30 January 2013 in a 1–0 loss against Huddersfield Town. In his next match, against
Charlton Athletic, Richards assisted
Glenn Murray's winning goal, as Palace defeated their
South London rivals 2–1. During his loan spell, he signed a new contract with Swansea until June 2016. He went on to make 11 appearances and appeared as an unused substitute in the
2013 Championship play-off final, as Palace beat
Watford 1–0 to achieve promotion to the Premier League. On 10 September 2013, Richards joined Championship side Huddersfield Town on a 93-day emergency loan. After not being able to obtain international clearance from
FIFA in time to play against
Doncaster Rovers on 14 September, he made his Town debut as a substitute in a 2–1 win over Charlton Athletic on 17 September 2013. His loan spell ended on 17 December after just 9 appearances for the Terriers. Following his return from his loan spell, Richards did not appear in another match until 16 February 2014 when he made played in a 3–1 loss against
Everton in the last-sixteen of the FA Cup. He made no further appearances during the remainder of the season. He then made his first Premier League appearance in two years when he came on as a substitute in the 82nd minute of a 0–0 draw against
Sunderland on 27 September 2014. Following this, Richards was given a handful of first team appearances throughout 2014 despite struggling to compete with Rangel and suffering his own injury concerns. In a 2–1 loss against
Tottenham Hotspur on 14 December 2014, Richards made an error that led to
Christian Eriksen scoring the winning goal. After the match, he issued an apology to Swansea City supporters for his error. Despite his apology, he became a victim of abuse on social media website Twitter by Swansea City supporters. He made his debut for the club on 31 January 2015, starting in a 2–1 loss against
Blackburn Rovers. After making five appearances, Richards had his loan spell with Fulham extended until the end of the season. Richards went on to make 14 appearances for the Cottagers, all of which were starts. He signed a three-year deal with the option of a fourth, for an undisclosed fee. Although his year was marked with injuries, Richards' made 22 appearances in his only season as a permanent player at the club. He established himself as a regular when he was fit. However, ahead of the 2016–17 season, Richards was expected to lose his first team place at Fulham, with manager
Slaviša Jokanović preferring
Ryan Fredericks in the right-back position. As a result, Fulham accepted a bid from Cardiff City for Richards.
Cardiff City On 19 July 2016, Richards joined Championship club Cardiff City on a three-year deal in a swap move which saw
Scott Malone join Fulham. He made his debut in a goalless draw at
Birmingham City, where he became embroiled in controversy after reportedly refusing to do Cardiff's traditional
ayatollah gesture, performed by fans of the club, several times at the match. However, the club later released video footage that showed him performing the gesture. After starting the season as a regular in the first team, Richards suffered a training injury in September that led to him missing three months of the season. His lengthy rehabilitation prompted manager
Neil Warnock to quip "I've had lads with broken legs recover quicker than him." He eventually made his return on 2 January, as unused substitute against
Aston Villa. He enjoyed an extended run in the first team soon after, playing in ten of the club's following twelve matches, stating that he felt that he had "a lot more to show. I think I'm nowhere near my full potential." In his first season with Cardiff, he appeared in a career high 26 league matches. He returned from injury in January 2018, playing in five matches before his season was ended by a further injury. He made only eleven appearances in all competitions during the season as Cardiff achieved promotion after finishing as runners-up.
Haverfordwest County In March 2021, Richards joined
Cymru Premier side
Haverfordwest County on a contract until the end of the season. In May 2021, Richards signed a contract extension to keep him at the club until the end of the 2021–22 season. In April 2022, Richards scored his first senior professional goals with a hat trick against
Cefn Druids. Subsequently, he signed a two year contract extension to the end of the 2023/2024 season. Richards played in Haverfordwest's
Europa Conference League campaign in 2023, playing against teams
KF Shkendija and
B36 Torshavn. In May 2024, Richards was placed on the expired contracts list at Haverfordwest and not included in the 2024/25 season squad. ==International career==